Col3a1基因:CSS网格-从1行 3列过渡到3行 1列(grid 1/3)

关于Col3a1基因的问题,在grid 1/3中经常遇到, 我正在探索 CSS Grid,看看它是否可以完全取代我的特定用例的响应式 CSS 媒体查询的需求。我有以下网格容器:

我正在探索 CSS Grid,看看它是否可以完全取代我的特定用例的响应式 CSS 媒体查询的需求。我有以下网格容器:

.gridContainer {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    padding: 0px 15px;
    margin: 0 auto;
    grid-row-gap: 20px;
}

网格容器包含三个项目,这些项目最初在较大的屏幕尺寸上产生一行和三列:

enter image description here

当我减少视口宽度,使三列低于 250px 时,我希望网格布局捕捉到三行和一列的布局:

enter image description here

当您减小视口宽度时,由于选择了自动放置算法,因此当前有一个临时布局,其中第三个项目包装到它自己所在的行上:

enter image description here

我想绕过这个包装,只支持初始的一行,三列布局和最后的三行,一列布局。

1

您可以使用 mediaquerie,并在达到最小宽度后将容器变成网格:(由于您提供的信息很少,因此选择了代码选项)

这个想法的基础例子

div {
  padding: 1em;
  margin: 1em;
  border: dotted tomato;
}
@media (min-width: 780px) {
  body {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    padding: 0px 15px;
    margin: 0 auto;
    grid-row-gap: 20px;
  }
}
<div>lorem</div>
<div>lorem</div>
<div>lorem</div>

您可以在整页模式下播放代码段,并调整浏览器的大小以检查行为。

1

自动调整或自动填充功能用最大列数填充可用空间。

您可以在媒体表达式的帮助下解决问题,以所需的分辨率更改列数。

后果

.grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(250px, 1fr));
  padding: 0px 15px;
  margin: 0 auto;
  grid-row-gap: 20px;
  list-style: none;
}
.item {
  border: 1px dashed red;
}
@media (max-width: 800px) {
  .grid {
    grid-template-columns: 1fr;
  }
}
<ul class="grid">
  <li class="item">
    <h3>Lorem, ipsum dolor.</h3>
    <p>Lorem ipsum dolor sit amet consectetur adiicing elit. Iusto nihil neque quas corrupti eaque in iure totam reiciendis praesentium. Sapiente impedit magni consequatur modi error eaque vel tempore consequuntur saepe.</p>
  </li>
  <li class="item">
    <h3>Lorem, ipsum dolor.</h3>
    <p>Lorem ipsum dolor sit amet consectetur adiicing elit. Iusto nihil neque quas corrupti eaque in iure totam reiciendis praesentium. Sapiente impedit magni consequatur modi error eaque vel tempore consequuntur saepe.</p>
  </li>
  <li class="item">
    <h3>Lorem, ipsum dolor.</h3>
    <p>Lorem ipsum dolor sit amet consectetur adiicing elit. Iusto nihil neque quas corrupti eaque in iure totam reiciendis praesentium. Sapiente impedit magni consequatur modi error eaque vel tempore consequuntur saepe.</p>
  </li>
</ul>

CodePen上的相同代码

enter image description here

本站系公益性非盈利分享网址,本文来自用户投稿,不代表码文网立场,如若转载,请注明出处

(74)
C盘中的用户是什么文件:c中的 stride是什么
上一篇
Cdn低价:UPS费率 API提供低价
下一篇

相关推荐

  • css disabled属性禁用 HTML 元素

    CSS disabled属性是一个布尔值属性,用于指定元素是否处于禁用状态。当元素处于禁用状态时,它将不会接受任何用户输入,并且通常会以某种方式显示出来(例如,颜色变淡)。…

    2023-12-17 16:07:26
    0 14 67
  • css画一个圆:圆形的美丽

    使用css画一个圆,可以使用`border-radius`属性:上面的代码将会创建一个宽度和高度都是200px的圆形div。…

    2023-06-03 12:24:22
    0 68 22
  • css字间距怎么设置:标题

    示例示例CSS中字间距是指文本中每个字符之间的距离。可以使用CSS中的`letter-spacing`属性来设置字间距。代码示例:…

    2023-10-06 11:53:52
    0 10 70
  • css详细教程:CSS Tutorial

    CSS(Cascading Style Sheets)是用来控制网页的样式表。它可以让你改变文字的大小,颜色,字体,对齐方式,背景图片,布局等等。…

    2023-07-03 01:58:25
    0 74 11
  • html5和css3的新特性:Welcome to the Future of Web Design!

    示例示例HTML5新特性(新的语义元素…

    2023-05-20 12:24:46
    0 40 74
  • css 背景色 透明:Let Your True Colors Shine Through!

    示例示例CSS 背景色透明可以使用 rgba 函数来实现,其中 a 代表 alpha 通道,取值范围为 0-1,0 代表完全透明,代表完全不透明。示例代码:…

    2023-06-22 06:58:38
    0 94 23
  • html css引用:这是一个标题

    示例示例HTML CSS引用是指在HTML文件中通过标签引用CSS文件,使HTML文件能够使用CSS文件中的样式设置来控制其外观。代码示例:…

    2023-06-04 14:35:55
    0 13 70
  • css底部对齐:Welcome to Our Website

    示例示例css底部对齐指的是将多个元素的底部对齐,使用CSS实现底部对齐可以使用flex布局。代码示例:…

    2023-05-01 13:46:07
    0 41 12

发表评论

登录 后才能评论

评论列表(55条)