默认情况下具有2列的CSS网格

hivapdat  于 2023-04-08  发布在  其他
关注(0)|答案(1)|浏览(115)

我想在CSS中创建一个网格,默认情况下有2列,但是如果宽度不够,可以将所有元素合并到1列中。如何实现?
目前,我的2列的宽度被定义为1fr 1fr,整个容器只占用子容器所需的水平空间,或者父容器中可用的水平空间。

o4hqfura

o4hqfura1#

这可以通过auto-fitminmax()来实现。
在下面的示例中,当容器的宽度小于400px + grid-gap时,列移动到下一行:

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  grid-gap: 10px;
}

.grid-cell {
  border: solid 1px;
}
<div class="grid">
    <div class="grid-cell">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Dignissimos, sed, sunt consectetur reiciendis vitae illo id expedita provident dolore tenetur eos dolor cupiditate perspiciatis hic necessitatibus rem vel molestiae laboriosam nulla alias eum sapiente eaque quas asperiores ratione architecto corporis.</div>
    <div class="grid-cell">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptas, autem!</div>
</div>

相关问题