html - 翻转卡自动高度?

标签 html css firefox

我无法找到解决方案来修复翻转正面和背面卡片的自动高度。尤其是在 Firefox 浏览器中。

$(".card").flip({
  axis: 'y',
  trigger: 'hover'
});
.card {
  height: auto;
  width: 100%;
  margin: 20px 0 30px 0;
}
.card .front, .card .back {
  border: 1px solid #ccc;
  border-radius: 20px;
  padding: 10px;
  height: auto !important;
}
.card .default{
  background-color: white;
}
.card .back{
  background-color: rgba(71, 207, 115, 0.1);
}
<html>
  <head>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
    <link rel="stylesheet" type="text/css" href="flipcard.css" />
    <script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
    <script src="https://cdn.rawgit.com/nnattawat/flip/master/dist/jquery.flip.min.js"></script>
    </head>
  
  <body>
    <div class="template">
      <div class="container">
        <div class="row">

          <div class="col-md-12">
            <p>test content</p>
          </div>
          <hr>
          <div class="col-md-4">
            <div class="card"> 
              <div class="front"> 
               <p>Front</p>
                <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. Etiam ornare est in ipsum elementum, nec sodales lacus congue.  <img src="https://dummyimage.com/mediumrectangle/222222/eeeeee" class="img-responsive img-rounded width-200 center-block" /><strong>Praesent non tristique arcu.</strong> Sed a viverra nulla. Nunc vehicula orci risus, a pellentesque metus hendrerit a. Duis at lorem tortor </p>

              </div> 
              <div class="back">
                <p>Back</p>
                <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. Etiam ornare est in ipsum elementum, nec sodales lacus congue.
                  <strong>Praesent non tristique arcu.</strong> Sed a viverra nulla. Nunc vehicula orci risus, a pellentesque metus hendrerit a. Duis at lorem tortor. </p>
              </div> 
            </div>
          </div>

          <div class="col-md-4">
            <div class="card"> 
              <div class="front"> 
               <p>Front</p>
                <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. </p>
              </div> 
              <div class="back">
                <p>Back</p>
                <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. Etiam ornare est in ipsum elementum, nec sodales lacus congue. <strong>Praesent non tristique arcu.</strong> Sed a viverra nulla. Nunc vehicula orci risus, a pellentesque metus hendrerit a. Duis at lorem tortor. </p>
              </div> 
            </div>
          </div>
          <div class="col-md-4">
            <div class="table-responsive">
              <table class="table table-bordered">
                <tbody>
                  <tr>
                    <td>
                      <div class="card">
                        <div class="front">
                          <p>Front</p>
                          <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. Etiam ornare est in ipsum elementum, nec sodales lacus congue. <strong>Praesent non tristique arcu.</strong> Sed a viverra nulla. Nunc vehicula orci risus, a pellentesque metus hendrerit a. Duis at lorem tortor. </p>
                        </div>
                        <div class="back">
                        <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. Etiam ornare est in ipsum elementum, nec sodales lacus congue. <img src="https://dummyimage.com/mediumrectangle/222222/eeeeee" class="img-responsive img-rounded width-200 center-block" />
                  <strong>Praesent non tristique arcu.</strong> Sed a viverra nulla. Nunc vehicula orci risus, a pellentesque metus hendrerit a. Duis at lorem tortor. </p>
                      </div>
                    </td>
                </tbody>
              </table>
            </div>
          </div>
          <hr>
          <div class="col-md-12">
            <p>test content</p>
          </div>
        </div>
      </div>
    </div>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
  </body>
  
</html>

以上代码基于JQuery和JS。在响应模式下,它与下面的内容重叠。

如果有任何解决方案会更有帮助。

谢谢。

最佳答案

您可以使用 flexbox 并依靠其默认的 stretch 属性来保持两个元素的高度相等。您还需要调整一些 CSS 并使用 !important 来覆盖 JS 添加的一些内联样式。

$(".card").flip({
  axis: 'y',
  trigger: 'hover'
});
.card {
  display:flex;
  width: 100%;
  margin: 20px 0 30px 0;
}
.card .front, .card .back {
  border: 1px solid #ccc;
  border-radius: 20px;
  padding: 10px;
  position:relative!important;
  height:auto!important;
}
.card .front {
  margin-right:-100%;
}
.card .default{
  background-color: white;
}
.card .back{
  background-color: rgba(71, 207, 115, 0.1);
}
<html>
  <head>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
    <link rel="stylesheet" type="text/css" href="flipcard.css" />
    <script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
    <script src="https://cdn.rawgit.com/nnattawat/flip/master/dist/jquery.flip.min.js"></script>
    </head>
  
  <body>
    <div class="template">
      <div class="container">
        <div class="row">

          <div class="col-md-12">
            <p>test content</p>
          </div>
          <hr>
          <div class="col-md-4">
            <div class="card"> 
              <div class="front"> 
               <p>Front</p>
                <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. Etiam ornare est in ipsum elementum, nec sodales lacus congue.  <img src="https://dummyimage.com/mediumrectangle/222222/eeeeee" class="img-responsive img-rounded width-200 center-block" /><strong>Praesent non tristique arcu.</strong> Sed a viverra nulla. Nunc vehicula orci risus, a pellentesque metus hendrerit a. Duis at lorem tortor </p>

              </div> 
              <div class="back">
                <p>Back</p>
                <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. Etiam ornare est in ipsum elementum, nec sodales lacus congue.
                  <strong>Praesent non tristique arcu.</strong> Sed a viverra nulla. Nunc vehicula orci risus, a pellentesque metus hendrerit a. Duis at lorem tortor. </p>
              </div> 
            </div>
          </div>

          <div class="col-md-4">
            <div class="card"> 
              <div class="front"> 
               <p>Front</p>
                <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. </p>
              </div> 
              <div class="back">
                <p>Back</p>
                <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. Etiam ornare est in ipsum elementum, nec sodales lacus congue. <strong>Praesent non tristique arcu.</strong> Sed a viverra nulla. Nunc vehicula orci risus, a pellentesque metus hendrerit a. Duis at lorem tortor. </p>
              </div> 
            </div>
          </div>
          <div class="col-md-4">
            <div class="table-responsive">
              <table class="table table-bordered">
                <tbody>
                  <tr>
                    <td>
                      <div class="card">
                        <div class="front">
                          <p>Front</p>
                          <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. Etiam ornare est in ipsum elementum, nec sodales lacus congue. <strong>Praesent non tristique arcu.</strong> Sed a viverra nulla. Nunc vehicula orci risus, a pellentesque metus hendrerit a. Duis at lorem tortor. </p>
                        </div>
                        <div class="back">
                        <p>Lorem ipsum dolor sit amet. Ut non quam in nisi molestie vulputate. Etiam ornare est in ipsum elementum, nec sodales lacus congue. <img src="https://dummyimage.com/mediumrectangle/222222/eeeeee" class="img-responsive img-rounded width-200 center-block" />
                  <strong>Praesent non tristique arcu.</strong> Sed a viverra nulla. Nunc vehicula orci risus, a pellentesque metus hendrerit a. Duis at lorem tortor. </p>
                      </div>
                    </td>
                   </tr>
                </tbody>
              </table>
            </div>
          </div>
          <hr>
          <div class="col-md-12">
            <p>test content</p>
          </div>
        </div>
      </div>
    </div>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>
  </body>
  
</html>

关于html - 翻转卡自动高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51684336/

相关文章:

css - 变换比例(): Animation on hover fails when the element becomes smaller

html - css 选择器将规则应用于多个类的相似元素

css 动画在 chrome 和 safari 中工作而不在 mozilla 中工作

php - IE 以不同于 Firefox、Chrome 和 iOS 的方式呈现 HTML

html - Bootstrap4 上的 hidden-sm-down 不起作用

html - 链接不带下划线并使用 css

html - 如何测试 Web 的多设备屏幕密度?

javascript - 是否有任何免费的 JS 工具提示,可以从外部 html div 内容加载内容?

javascript - bxslider 删除图像后留下空白幻灯片

javascript - 如何使用 FF 解除/阻止键盘(键 #93)的上下文菜单?