Bootstrap 4 alpha 6:折叠后两个div并排展开时堆叠

时间:2017-05-11 08:03:36

标签: javascript twitter-bootstrap bootstrap-4 twitter-bootstrap-4

我正在尝试使用Bootstrap 4 alpha 6进行非关键项目,并遇到了一些奇怪的行为。应该并排显示的折叠div在展开时会堆叠。

以下是重现问题的确切步骤(请参阅下面的完整工作示例):

  1. 创建一个包含两个col-12 div的col-6 div。与我的例子中的粉红色和黄色div一样,两个狭窄的div将并排坐着。
  2. 在div上方添加一个链接,并将其设置为collapse col-12 div(如示例中的Expand链接)
  3. 当您展开div时,您会注意到两个col-6 div并排显示一瞬间,然后突然最终堆叠在另一个之上。
  4. 我意识到这可能只是一个错误,当Bootstrap 4越来越接近最终版本时会被修复,但我想知道是否有人建议在此期间解决这个问题。

    我确实尝试过在我的浏览器开发工具中覆盖CSS的各种排列,但我看不出是什么样的设置让右手div在这样的左下方下降,而且稍微的延迟让我想到也许它是而是一个JavaScript问题。或者也许这是我糟糕的HTML!

    <!DOCTYPE html>
    <html>
      <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
        <script src="https://code.jquery.com/jquery-3.1.1.slim.min.js" integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script>
        <script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
        <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>
      </head>
    
      <body class="container" style="margin-top: 40px;">
        <div class="row col-12">
          <!-- Title and authors -->
          <h4 class="col">
            <a href="#details" data-toggle="collapse" aria-expanded="true">
                <span>Expand</span>
            </a>
          </h4>
        </div>
    
        <div id="details" class="row collapse" aria-expanded="true">
          <div class="col col-6" style="background-color: lightblue;">
            <h3>Text on the left</h3>
            <p>Lorem ipsum dolor sit amet, iusto fuisset ea pri.</p>
          </div>
    
          <div class="col col-6" style="background-color: lightgreen;">
            <h3>Text on the right</h3>
            <p>Cu sed latine tacimates maluisset, nibh.</p>
          </div>
        </div>
    
        <div class="row" aria-expanded="true">
          <div class="col col-6" style="background-color: lightpink;">
            <h3>Exact same as collapsed area above but no collapse</h3>
            <p>Lorem ipsum dolor sit amet, iusto fuisset ea pri.</p>
          </div>
    
          <div class="col col-6" style="background-color: lightyellow;">
            <h3>Text on the bottom right</h3>
            <p>Cu sed latine tacimates maluisset, nibh.</p>
          </div>
        </div>
      </body>
    </html>

1 个答案:

答案 0 :(得分:0)

在GitHub上已经打开了一个问题:https://github.com/twbs/bootstrap/issues/22600

同时,解决方法是使用..

.row.collapse.show {
    display: flex;
}

http://codeply.com/go/jjHvwkYalf