html - 我如何平均间隔 css 网格列?

标签 html css

我有一个以表格格式显示数据的网格。我公司的前任开发人员使用 grid-template-columns 和 minmax 属性来实现 View ,但其中一个表的第一列很宽,其他列都没有问题。如何将它们等距隔开,使它们具有相同的宽度?

我试过使用 minmax(auto, 1fr) 和 repeat(auto-fill, minmax(max-content, 1fr)) 但它只会弄乱 View 的整个结构

主容器具有以下 CSS:

    display: grid;
    grid-template-columns: minmax(min-content, 30%) 1fr auto;
    justify-content: center;

而显示表格数据的页面prt是这样的:

    display: grid;
    grid-template-columns: minmax(auto, 1fr);

我希望每列的间距相等

View image

最佳答案

下面是使用网格的 3 个相等列的示例:

.parent {
  background: blue;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr);
  height: 100%;
  width: 100%;
}

.child-1 {
  background: red;
  grid-column-start: 1;
  grid-column-end: 2;
  grid-row-start: 1;
  grid-row-end: 3 end;
}

.child-2 {
  background: green;
  grid-column-start: 2;
  grid-column-end: 3;
  grid-row-start: 1;
  grid-row-end: 3 end;
}

.child-3 {
  background: black;
  grid-column-start: 3;
  grid-column-end: 3;
  grid-row-start: 1;
  grid-row-end: 3 end;
}

@-- Non-Grid Styles --@

body {
  height: 100vh;
  margin: 0;
  width: 100vw;
}

.child-1,
.child-2,
.child-3 {
  align-items: center;
  color: white;
  display: flex;
  justify-content: center;
}
<div class="parent">
  <div class="child-1">child 1</div>
  <div class="child-2">child 2</div>
  <div class="child-3">child 3</div>
</div>

此链接对如何使用网格有很好的解释:Grid Info

关于html - 我如何平均间隔 css 网格列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56778002/

相关文章:

javascript - 如何仅在较小的屏幕尺寸上使用 jQuery appendTo,但在较大的屏幕上返回正常位置

html - 如何在打开侧边导航栏时推送 HTML 内容?

javascript - 如何在物理js中使用两个图像

jquery - 我想为每个必需的标签添加 required(*)

css - 为什么不能使用边距或填充来垂直居中?

jquery - 如何在仅指定类名的灯箱(lightbox、colorbox 或 ibox..)应用程序中打开 div?

html - 更改颜色后内部链接不起作用

css - 将 LESS 嵌套 CSS 转换为标准 CSS

javascript - <ul> 不是折叠的,只是扩展的

html - 将内容脚本 css 与网站 css 分开?