html - 如何填充CSS网格中剩余的空列

标签 html css css-grid

我有一个包含 5 列的网格。在图片中,我已经演示了当第 1、2 和 5 列被“填充”时,我想在剩余的第 3 和第 4 列中放置一个元素。

我永远不知道哪些列被“占用”了,所以代码应该灵活(先为空,最后为空)。

enter image description here

最佳答案

使用 CSS 使用 :empty 伪类来检查元素是否为空。

使用 JS 使用 innerHTML == '' 检查元素是否为空。

document.querySelectorAll('.grid div').forEach(e => {
  if (e.innerHTML == '') {
    console.log(e);
  }
})
.grid {
  display: grid;
  grid-gap: 1em;
  grid-template-columns: repeat(5, 1fr);
}

.grid div {
  background: green;
}

.grid div:empty {
  background: Red;
}
<div class="grid">
  <div>1</div>
  <div>2</div>
  <div></div>
  <div></div>
  <div>5</div>
</div>

关于html - 如何填充CSS网格中剩余的空列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58350759/

相关文章:

php - 注意未定义的 PHP 偏移量

javascript - HTML5幻灯片放映效果

CSS 网格 - IE 11 重叠

javascript - Location.hash 返回空字符串

html - 保存 Chrome 开发控制台 html 更改

HTML:更改 Blogger 帖子标题的字体大小

html - 带有 CSS Grid 的 Div 在 chrome 和 firefox 中表现不一致

html - 为什么 Chrome 80 会导致这个 grid-template-rows : auto problem

php - 使用 anchor 标题而不是图像标题

css - 如何在中继响应 url 上使用脚本?