html - 项目之间的空白
问题描述
我已经设置了一个网格系统,它们的行为几乎符合预期。
问题是列之间有很大的间隙
我尝试设置 grid-column-gap 但它似乎没有响应。请注意,我使用的是 scss,虽然我尝试将其改回 css,但结果相同。
.container {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-column-gap: 1rem;
grid-gap: 1rem;
justify-items: center;
.language {
width: 360px;
height: 150px;
border: 1px solid rgb(214, 214, 214);
background: white;
padding: 1rem;
text-align: left;
border-radius: 10px;
cursor: pointer;
color: black;
box-shadow: 2px 1px 1px 1px rgb(228, 228, 228);
}
p {
color: red;
}
}
<template>
<div class="container">
<div class="language">
<h3>LanguageContainer</h3>
<p>Description</p>
</div>
<div class="language">
<h3>LanguageContainer</h3>
<p>Description</p>
</div>
<div class="language">
<h3>LanguageContainer</h3>
<p>Description</p>
</div>
<div class="language">
<h3>LanguageContainer</h3>
<p>Description</p>
</div>
<div class="language">
<h3>LanguageContainer</h3>
<p>Description</p>
</div>
<div class="language">
<h3>LanguageContainer</h3>
<p>Description</p>
</div>
</div>
</template>
解决方案
正如 Niet the dark Absol 所评论的那样。
默认情况下,整个容器的宽度为 100%,因此每列占可用全宽度的三分之一。但是,里面的项目有一个固定的宽度,所以你有很大的差距。– Niet the Dark Absol 54 分钟前
只需在我的容器上设置一个宽度即可修复它。
.container {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-column-gap: 1rem;
grid-gap: 1rem;
width: 70%;
justify-items: center;
.language {
width: 360px;
height: 150px;
border: 1px solid rgb(214, 214, 214);
background: white;
padding: 1rem;
text-align: left;
border-radius: 10px;
cursor: pointer;
color: black;
box-shadow: 2px 1px 1px 1px rgb(228, 228, 228);
}
p {
color: red;
}
推荐阅读
- python - 当服务器在打开握手后向客户端发送消息时,为什么我得到无效的帧头?
- git - 如何删除git中意外提交的文件?
- c# - 将 boostrap-datepicker 与 @Scripts.Render("~/bundles/jquery") 结合起来不兼容
- javascript - Ajax 没有正确触发 Symfony 5 Javascript
- c# - MSTest - 断言小数等于另一个小数 - 有公差
- ios - 一起旋转 imageView 和它的 UIImage
- c# - 如何在 C# 中的 OpenXML 图表中添加轴标题?
- swiftui - 如何在swiftui中触发通知徽章
- linux - 并行运行多个 shell 函数实例
- string - 是否有 R 函数可以将单元格中的单词转换为字母?