如何在CSS网格中删除未使用的列/行

和奥特迈尔

我正在开发一个小部件,它将最多显示垂直分布在两列中的8篇文章。如果此窗口小部件显示的文章少于4件,我想避免多余的空间。我尝试了很多事情,但是没有成功,并且由于我对脚本不是很熟悉,所以如果可以不用它们,我想避免使用它们。

这是我到目前为止所拥有的:

article {
  background: lightblue;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(4, 1fr);
  grid-column-gap: 1em;
  grid-auto-flow: column;
  margin-bottom: 1em;
}

/* Styling Purpose */

div {
  padding: 0.5em;
}

div:nth-child(odd) {
  background: lightgray;
}

article.yes {
  grid-template-rows: repeat(3, 1fr);
}
<h1>OK</h1>
<article>
  <div>Article 1</div>
  <div>Article 2</div>
  <div>Article 3</div>
  <div>Article 4</div>
  <div>Article 5</div>
</article>

<h1>Not OK</h1>
<article>
  <div>Article 1</div>
  <div>Article 2</div>
  <div>Article 3</div>
</article>
<h1>What I want</h1>
<article class="yes">
  <div>Article 1</div>
  <div>Article 2</div>
  <div>Article 3</div>
</article>

https://codepen.io/HitArrowLegend/pen/bGBRvZR

如果您不知道某些CSS网格,请告诉我:D

迈克尔·本杰明

不要设置明确的列和行。这些是您使用grid-template-columns定义的曲目grid-template-rows

隐式网格为您完成工作。它将根据需要创建列和行。这些曲目的默认大小为grid-auto-rows: autogrid-auto-columns: auto

您只需要在相应的列中设置项目即可。

article {
  display: grid;
  grid-column-gap: 1em;
  grid-auto-flow: column;
  margin-bottom: 1em;
  background: aqua;  /* adjusted for easier viewing */
}

 /* place items 1-4 in column 1 */
div:nth-child(-n + 4) { grid-column: 1; }

/* place items 5-8 in column 2 */
div:nth-child(n + 5):nth-child(-n + 8) {
  grid-column: 2;
}

/* Styling Purpose */
div {
  padding: 0.5em;
}
div:nth-child(odd) {
  background: gray; /* adjusted for easier viewing */
}
<article>
  <div>Article 1</div>
</article>

<article>
  <div>Article 1</div>
  <div>Article 2</div>
</article>

<article>
  <div>Article 1</div>
  <div>Article 2</div>
  <div>Article 3</div>
</article>

<article>
  <div>Article 1</div>
  <div>Article 2</div>
  <div>Article 3</div>
  <div>Article 4</div>
</article>

<article>
  <div>Article 1</div>
  <div>Article 2</div>
  <div>Article 3</div>
  <div>Article 4</div>
  <div>Article 5</div>
</article>

<article>
  <div>Article 1</div>
  <div>Article 2</div>
  <div>Article 3</div>
  <div>Article 4</div>
  <div>Article 5</div>
  <div>Article 6</div>
</article>

<article>
  <div>Article 1</div>
  <div>Article 2</div>
  <div>Article 3</div>
  <div>Article 4</div>
  <div>Article 5</div>
  <div>Article 6</div>
  <div>Article 7</div>
</article>

<article>
  <div>Article 1</div>
  <div>Article 2</div>
  <div>Article 3</div>
  <div>Article 4</div>
  <div>Article 5</div>
  <div>Article 6</div>
  <div>Article 7</div>
  <div>Article 8</div>
</article>

如果您需要将背景色保留在其列中,请将其添加到您的容器中:

grid-template-columns: 1fr 1fr

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在CSS网格中删除未使用的列/行

来自分类Dev

如何删除矩阵中未使用的行和列

来自分类Dev

如何在CSS网格中动态添加一列而不包装到新行?

来自分类Dev

如何在CSS网格中动态添加一列而不包装到新行?

来自分类Dev

如何在具有指定行高的css网格布局中隐藏列的溢出部分?

来自分类Dev

如何使用WPF删除网格中的最后一行?

来自分类Dev

如何使用WPF删除网格中的最后一行?

来自分类Dev

如何在CSS网格系统中偏移div列

来自分类Dev

如何在具有响应的每一行的编辑/删除按钮的AG网格中添加动作列?

来自分类Dev

如何在DataGridView中克隆和删除未选择的行?

来自分类Dev

如何从网格中删除多个选定的行

来自分类Dev

使用JavaScript从网格数组中删除列

来自分类Dev

如何在Visual Studio 2013中删除未使用的功能

来自分类Dev

如何在JqWidgets网格中获取所有未选择的行索引的列表

来自分类Dev

如何使用数据网格上的每个删除按钮从数据库中删除行

来自分类Dev

如何删除DataGrid中多余的未使用空间中的行

来自分类Dev

如何在CSS网格中滚动?

来自分类Dev

如何在CSS中居中显示网格?

来自分类Dev

如何在 CSS 中对齐 Angular 网格?

来自分类Dev

记录未使用复选框从网格中删除

来自分类Dev

背景颜色未填充CSS网格中的行

来自分类Dev

列多时如何在Excel 2013中删除重复的行?

来自分类Dev

如何在VBA中基于2列的条件删除行?

来自分类Dev

如何在维度表中查找未使用的行

来自分类Dev

如何删除未使用的CSS规则

来自分类Dev

如何在CSS网格系统中的列之间进行装订

来自分类Dev

删除CSS中未使用的类

来自分类Dev

删除CSS网格中的空白

来自分类Dev

删除datatables表(jquery)中的所有行后,如何在CSS中删除叠加层?

Related 相关文章

  1. 1

    如何在CSS网格中删除未使用的列/行

  2. 2

    如何删除矩阵中未使用的行和列

  3. 3

    如何在CSS网格中动态添加一列而不包装到新行?

  4. 4

    如何在CSS网格中动态添加一列而不包装到新行?

  5. 5

    如何在具有指定行高的css网格布局中隐藏列的溢出部分?

  6. 6

    如何使用WPF删除网格中的最后一行?

  7. 7

    如何使用WPF删除网格中的最后一行?

  8. 8

    如何在CSS网格系统中偏移div列

  9. 9

    如何在具有响应的每一行的编辑/删除按钮的AG网格中添加动作列?

  10. 10

    如何在DataGridView中克隆和删除未选择的行?

  11. 11

    如何从网格中删除多个选定的行

  12. 12

    使用JavaScript从网格数组中删除列

  13. 13

    如何在Visual Studio 2013中删除未使用的功能

  14. 14

    如何在JqWidgets网格中获取所有未选择的行索引的列表

  15. 15

    如何使用数据网格上的每个删除按钮从数据库中删除行

  16. 16

    如何删除DataGrid中多余的未使用空间中的行

  17. 17

    如何在CSS网格中滚动?

  18. 18

    如何在CSS中居中显示网格?

  19. 19

    如何在 CSS 中对齐 Angular 网格?

  20. 20

    记录未使用复选框从网格中删除

  21. 21

    背景颜色未填充CSS网格中的行

  22. 22

    列多时如何在Excel 2013中删除重复的行?

  23. 23

    如何在VBA中基于2列的条件删除行?

  24. 24

    如何在维度表中查找未使用的行

  25. 25

    如何删除未使用的CSS规则

  26. 26

    如何在CSS网格系统中的列之间进行装订

  27. 27

    删除CSS中未使用的类

  28. 28

    删除CSS网格中的空白

  29. 29

    删除datatables表(jquery)中的所有行后,如何在CSS中删除叠加层?

热门标签

归档