gpt4 book ai didi

html - CSS网格不限制列数

转载 作者:行者123 更新时间:2023-12-01 23:48:25 25 4
gpt4 key购买 nike

我试图让我的网格每行只放置 3 个按钮,这样当我添加第 4 个按钮时,它应该自动放置在下一行。

这是我的代码:

.div {
display: grid;
grid-template-columns: auto auto auto;
background: #3c763d;
}

.button {
background: #27ae60;
float: left;
margin: 6px 6px 6px 6px;
height: 2rem;
width: 8.33%;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.32), 0 1px 2px rgba(0, 0, 0, 0.34);
color: #f9f9f9;
text-align: center;
justify-content: center;
padding-top: 12px;
}

.button:hover {
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.24);
cursor: pointer;
}
<!DOCTYPE html>
<html>

<head>
<title>Rock, Paper, Scissors!</title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<link rel="stylesheet" type="text/css" href="index.css">
</head>

<h1>Rock Paper Scissors</h1>
<h3>Make your selection!</h3>

<div>
<div class="button">Rock</div>
<div class="button">Paper</div>
<div class="button">Scissors</div>
<div class="button">Clear</div>
</div>

</html>

相反,我一直向左显示一排 4 个按钮,而不是一行 3 个,然后是新的一行 1。我在这里误解了什么?

最佳答案

您已经很接近了,但是您需要解决一些问题才能使其正常工作。

<强>1。您的网格 CSS 规则位于您未使用的类 div 中:
您的网格 CSS 规则在 .div {...} 中要么你的意思是成为<div>元素(仅供引用 - 它会使 每个 div 成为网格容器!)或忘记将 div 类添加到 HTML 中的网格元素。

相反,向您的外部 div 添加一个类,例如<div class="mygrid">并将网格 css 规则添加到该类,例如

.mygrid {
display: grid;
grid-template-columns: auto auto auto;
background: #3c763d;
/* Extra info! You can use this for even grid gaps */
grid-gap: 6px;
padding: 6px;
}

<强>2。你给你的按钮 width 8.33% - 这将使您的按钮占网格列的 8.55%,我假设您不想要 :)。

<强>3。您还可以删除 display:float 来自按钮,因为这将由网格自动管理

<强>4。您可以使用 grid-gap在网格元素之间创建均匀的间隙,而不是在它们上设置边距 - 这使得行和列之间的间隙相同,因为我没有边距折叠。
(可以在容器上使用相同大小的padding来均匀填充空间。)

工作示例:

.mygrid {
display: grid;
grid-template-columns: auto auto auto;
background: #3c763d;
grid-gap: 6px;
padding: 6px;
}

.button {
background: #27ae60;
height: 2rem;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.32), 0 1px 2px rgba(0, 0, 0, 0.34);
color: #f9f9f9;
text-align: center;
justify-content: center;
padding-top: 12px;
}

.button:hover {
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.12), 0 1px 1px rgba(0, 0, 0, 0.24);
cursor: pointer;
}
<h1>Rock Paper Scissors</h1>
<h3>Make your selection!</h3>

<div class="mygrid">
<div class="button">Rock</div>
<div class="button">Paper</div>
<div class="button">Scissors</div>
<div class="button">Clear</div>
</div>

关于html - CSS网格不限制列数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63823032/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com