html - 网格项不离开一个网格单元

标签 html css css-grid

如您所见,我已将 .content div 分为五个相等的列。我想让导航 (nav) 位于最后两列的中心。

我指定它的位置应该在 4/5 上,并且还添加了 justify-self: center 来居中,但显然,该元素只是卡在了 4 号上柱子。我也检查了它,无论如何它都不会留下一栏。我该如何解决这个问题?

.content {
  height: 100vh;
  display: grid;
  grid-template-columns: 20% 20% 20% 20% 20%;
  grid-template-rows: 10% 10% 10% 10% 10% 10% 10% 10% 10% 10%;
}

.content nav {
  grid-column: 4 / 5;
  grid-row: 1;
  align-self: center;
  justify-self: center;
}

.content nav a {
  margin: 0cm 0.5cm 0cm 0.5cm;
}
<div class="content">
  <nav>
    <a href="#">Text #1</a>
    <a href="#">Text #2s</a>
    <a href="#">Text #3</a>
    <a href="#">Text #4</a>
  </nav>
</div>

最佳答案

grid-column: 4/5 无法按您的预期工作,因为数字 4 和 5 并不代表网格单元,而是代表网格线。

看看这张照片:

Take a look a this picture

grid-column: 3/5 这里表示将此区域放置在列线 3 和 5 之间

正如 @VXp 在评论中所说 - 将其设置为 grid-column: 4/6grid-column: 4/span 2 就可以了。

这是一个很好的guide完全覆盖了 CSS 网格。

关于html - 网格项不离开一个网格单元,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52442526/

相关文章:

html - 使图像 slider 全 Angular 响应

html - 将 div 放在带有动态内容的页面底部

html - 如何使CSS网格只出现在手机上而不出现在桌面上

javascript - 使用 angularJS 创建动态 html 电子邮件,使用 php 创建邮件

html - 浏览器是否在不需要时加载媒体样式表中的文件?

java - 使用 JDOM 加载远程 html 源代码时出现问题

javascript - 如何确定 CSS 过渡是否即将发生?

html - 居中对齐不一致

css - 使页面响应时如何摆脱内容行之间的空间?

javascript - 使 CSS 网格或 Flex 元素大小相等,并在其之间拉伸(stretch)分隔符