【发布时间】:2022-06-17 23:03:53
【问题描述】:
在我的 CSS 网格内的 flexbox 中,父级(网格)在第二列上没有获得其子级的全宽。问题可能与“grid-template-columns”有关,但我找不到解决方案。
https://codepen.io/francisbbelisle/pen/poaeaZQ
目标:https://postimg.cc/svsQQ8z8 问题:https://postimg.cc/f3fTNWtR
$spacing: 4rem;
body {
background-color: #353535;
overflow-x: hidden;
text-size-adjust: 100%;
}
.cat {
background-color: #222;
padding: 0;
height: 100vh;
h2 {
font-size: 3em;
text-align: center;
}
h3 { font-size: 1.5em }
p { font-size: .75em }
span {
font-weight: bold;
text-align: right;
float: right;
margin-left: 2em;
}
.wrapper {
padding: 0;
display: grid;
grid-template-columns: auto auto auto auto;
overflow-x: scroll;
div {
margin: $spacing;
padding: $spacing;
background-color: #ffffff;
display: flex;
max-height: calc(100vh - #{$spacing}*4 );
column-gap: $spacing;
flex-direction: column;
flex-wrap: wrap;
}
ul {padding: 0}
li { width: 33vw; list-style-type: none; }
}
}
<section class="cat">
<div class="wrapper">
<div>
<h2>Menu 1</h2>
<h3>Cat 1</h3>
<br>
<ul>
<li>Item 1<span></span><span>00</span><p>Description</p></li>
<li>Item 2<span>00</span><span>00</span><p>Description</p></li>
<li>Item 3<span></span><span>00</span><p>Description</p></li>
<li>Item 4<span></span><span>00</span><p>Description</p></li>
</ul>
<br>
<h3>Cat 2</h3>
<br>
<ul>
<li>Item 1<span></span><span>00</span><p>Description</p></li>
<li>Item 2<span>00</span><span>00</span><p>Description</p></li>
<li>Item 3<span></span><span>00</span><p>Description</p></li>
<li>Item 4<span></span><span>00</span><p>Description</p></li>
</ul>
<br>
</div>
<div>
<h2>Menu 2</h2>
<h3>Cat 1</h3>
<br>
<ul>
<li>Item 1<span></span><span>00</span><p>Description</p></li>
<li>Item 2<span>00</span><span>00</span><p>Description</p></li>
<li>Item 3<span></span><span>00</span><p>Description</p></li>
<li>Item 4<span></span><span>00</span><p>Description</p></li>
</ul>
<br>
<h3>Cat 2</h3>
<br>
<ul>
<li>Item 1<span></span><span>00</span><p>Description</p></li>
<li>Item 2<span>00</span><span>00</span><p>Description</p></li>
<li>Item 3<span></span><span>00</span><p>Description</p></li>
<li>Item 4<span></span><span>00</span><p>Description</p></li>
</ul>
<br>
</div>
</div>
</section>
编辑 2022-05-18 我已经简化了我的代码。 列和间隙需要固定宽度。 flex 宽度需要与他的内容相同。 该页面需要可滚动才能看到。 我对“列:自动 200px”有同样的问题。
【问题讨论】:
-
你能澄清一下哪个元素是目标吗?它看起来像 div 内部的唯一 flex 元素 .wrapper 是唯一的网格元素。所以没有带有 flex 父级的网格
-
更好的问题是你到底想做什么?期望的结果是什么?
-
希望这会有所帮助:postimg.cc/svsQQ8z8 抱歉,如果我的代码不清楚。这是一个完整网站的简单版本。