首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >水平显示网格中心子元素

水平显示网格中心子元素
EN

Stack Overflow用户
提问于 2022-02-01 11:57:05
回答 1查看 309关注 0票数 0

我相信这件事以前已经回答过了,但我似乎无法使它起作用。我正试图用一个display:grid父元素水平地对网格项进行居中。我有一个12列网格(76 12列/56 12全屏幕间隙),其中包含各种列宽度子元素(在本例中,我只使用span 8 1000 12)。

代码语言:javascript
复制
.main-container{
  max-width:1528px;
  margin: 0 auto;
}

.parent{
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-column-gap: 56px;
  justify-items: center;
}

.grid-8{
  grid-column: span 8;
  background: red;
  opacity: 0.6;
  width: 100%;
}
代码语言:javascript
复制
<div class="main-container">
  <div class="parent">
    <div class="grid-8">8</div>
  </div>
</div>

而且,一旦子元素以中心为中心,它是否有可能保持其宽度(1000 to )直到.main-container开始接触任何一方?一旦浏览器开始被拉小(水平)。抱歉,我要解释一下我的意思有点棘手。如果将浏览器窗口拉入,那么这是1200‘m宽,span 8列将不再是1000’m宽,它将缩小(我猜是因为它相对于主容器大小)。但理想情况下,我希望它保持1000 in,直到..main容器到达它,然后span 8就可以开始减小宽度了。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-01 13:54:13

不能将网格中的项自动与对齐/对齐道具。

您可以尝试对每个子节点使用网格列结束:-N;语法,但这不是最好的方法。

使用flex要好得多--在本例中,您可以根据自己的意愿对齐子节点。

无论如何,如果您想继续使用网格,可以这样做(比如选项):

代码语言:javascript
复制
.main-container {
  max-width: 1528px;
  margin: 0 auto;
}

.parent {
  --columns-amount: 12;
  display: grid;
  /*grid-template-columns: repeat(12, minmax(0, 1fr));*/
  grid-template-columns: repeat(var(--columns-amount), 1fr);
  grid-column-gap: 56px;
  /*justify-items: center;*/
}

.grid-8 {
  /* edit --column-size to see changes */
  --column-size: 8;
  grid-column: calc((var(--columns-amount) - var(--column-size)) / 2 + 1) / span var(--column-size);
  background: red;
  opacity: 0.6;
  /*width: 100%;*/
}


/* flex */

.parent--flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.parent--flex>.grid-8 {
  flex: 0 0 auto;
  width: 66.66667%;
}
代码语言:javascript
复制
<div class="main-container">
  <div class="parent">
    <div class="grid-8">Grid</div>
  </div>
</div>

<hr />

<div class="main-container">
  <div class="parent--flex">
    <div class="grid-8">Flex</div>
  </div>
</div>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70940184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档