代码之家  ›  专栏  ›  技术社区  ›  InvisiblePanda

在firefox/chrome/safari中,具有溢出和引导导航条的flex是不同的。

  •  0
  • InvisiblePanda  · 技术社区  · 6 年前

    当我使用firefox显示下面的代码片段时, div 随班 h-100 已分配整页高度( 100vh )的高度 nav 然后添加以生成第二个滚动条。

    我想要的只是 div 具有 overflow-y: auto 应该有一个滚动条。

    奇怪的是,在Chrome和Safari中,代码的行为似乎和我想要的一样。

    我的HTML/CSS有问题吗?我如何解决这种行为差异?

    .grey {
      background-color: grey;
    }
    
    #foo {
      background-color: red;
    }
    <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/>
    
    <div id="root">
      <div style="height: 100vh; display: flex; flex-direction: column">
        <nav class="navbar navbar-dark navbar-expand bg-dark"><a class="navbar-brand" href="/">Title</a></nav>
        <div class="h-100" style="display: flex; flex-direction: row">
          <div style="flex: 1 1 auto; overflow-y: auto">
            <div id="foo" style="height: 1200px">
            </div>
          </div>
        </div>
      </div>
    </div>
    1 回复  |  直到 6 年前
        1
  •  2
  •   Joykal Infotech    6 年前

    将溢出设置为隐藏到父分区。

    .grey {
      background-color: grey;
    }
    
    #foo {
      background-color: red;
    }
    <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/>
    
    <div id="root">
      <div style="height: 100vh; display: flex; flex-direction: column">
        <nav class="navbar navbar-dark navbar-expand bg-dark"><a class="navbar-brand" href="/">Title</a></nav>
        <div class="h-100" style="display: flex; overflow: hidden; flex-direction: row">
          <div style="flex: 1 1 auto; overflow-y: auto">
            <div id="foo" style="height: 1200px">
            </div>
          </div>
        </div>
      </div>
    </div>