css - 只允许 css-grid 中的一部分行自动收缩

标签 css css-grid

给定一个堆栈由一个主类别和一个子类别组成,第一个(子类别)有一个标题。

标题行继承了其他行的高度。 如何让header的高度自动收缩?

我尝试为“group-header”类设置 height:CONSTANT,但没有任何改变。

我还尝试更改“group-header”类的“display”属性,但事实并非如此。

#container {
  display: grid;
  grid-template-rows: repeat( auto-fill, minmax(50px, 1fr));
  grid-row-gap:10px;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}

.row {
  background: rgb(248, 249, 55);
}

.group-header {
  background: rgb(48, 149, 215);
}
img {
  height:36px;
}
<div id="container">
  <div class="row group-header">Sub Group Header</div>
  <div class="row">row1 <img /></div>
  <div class="row">row2 <img /></div>
  <hr/>
  <div class="row">row1 <img /></div>
  <div class="row">row2 <img /></div>
  <div class="row">row3 <img /></div>
  <div class="row">row4 <img /></div>
</div>

我们需要标题高度来适应绿线,而不是红线:

desired result

最佳答案

您想通过为行高设置自动来更新您的 CSS grid-template 属性

#container {
  display: grid;
  grid-template-rows: repeat( auto-fill, minmax(auto, 1fr));
  grid-row-gap:10px;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}

#container {
  display: grid;
  grid-template-rows: repeat( auto-fill, minmax(auto, 1fr));
  grid-row-gap:10px;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
}

.row {
  background: rgb(248, 249, 55);
}

.group-header {
  background: rgb(48, 149, 215);
  
 
}
img {
  height:36px;
}
<div id="container">
  <div class="row group-header">Sub Group Header</div>
  <div class="row">row1 <img /></div>
  <div class="row">row2 <img /></div>
  <hr/>
  <div class="row">row1 <img /></div>
  <div class="row">row2 <img /></div>
  <div class="row">row3 <img /></div>
  <div class="row">row4 <img /></div>
</div>

关于css - 只允许 css-grid 中的一部分行自动收缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53881972/

相关文章:

javascript - 为 Node.JS 加载自定义 CSS 处理程序

html - 在 Safari 中悬停时按钮的位置发生变化

html - 为什么我的 css 网格项在以特定布局排列时会重叠?

css - 如何使Angular的<router-outlet>与CSS Grid一起使用

css - 嵌套 CSS 网格布局问题

html - 移除 CSS Grid 中的 "Align-items"空间

css - 使用 grid/flex 使行之间的列大小均匀

JavaScript 对整个元素类的高效样式更改

html - 无法删除第一列单元格之前和最后一个单元格之后的间距?

javascript - 如何确保 Canvas 包含在视口(viewport)中