html - Firefox 和 Chrome 中的 CSS 网格溢出行为不同

标签 html css cross-browser css-grid

在下面的片段中,我注意到 Firefox 和 Chrome 中的不同滚动行为。在 Firefox 中只有 .main 滚动,在 Chrome 中,整个主体都滚动。我在做一些不规范的事情吗?哪个浏览器合适?如何让 Chrome 像 Firefox 一样运行?

https://jsfiddle.net/Lgzb45np/

body {
  height: 100vh;
}

.container {
  display: grid;
  grid-template: 50px 1fr / 240px 1fr;
  height: 100%;
}

.header {
    grid-area: 1/1;
}
.sidebar {  
    grid-area: 2/1;
}
.main {  
  grid-area: 2/2;    
  height: 100%;
  overflow: auto;
}
.large-div{
  height: 800px;
}
<div class="container">
  <div class="header">Some Header Row</div>
  <div class="sidebar">A Sidebar</div>
  <div class="main">
  <div class="large-div">This is large</div>
  And Some More</div>
</div>

最佳答案

.main 中删除 height: 100% 应该可以。您已经定义了 .maincolumn (1fr)

的高度大小

CSS

.main {  
grid-area: 2/2;    
overflow: auto;
}

DEMO

关于html - Firefox 和 Chrome 中的 CSS 网格溢出行为不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52869750/

相关文章:

css - 使无序列表水平拉伸(stretch)以便始终填满 div

javascript - 多次计算,同页显示

javascript - 动画条变小

javascript - 仅使用 javascript 和 html 即可实现具有跨浏览器功能的 html 音频录制

javascript - 更改图像属性更改的不透明度?

javascript - 如何将相对路径设置为 "a href"?

javascript - 如何使 Wrapper div 只包含非溢出的 div

javascript - 菜单/页面缩小效果?

xslt - 不间断空格 ("&#xA0;") 在 IE9 和 IE11 中进行 XSLT 转换时未正确转换

javascript - 我如何定义 "the rest of width"?