【发布时间】:2021-11-11 20:01:03
【问题描述】:
我正在做一个学校项目,这是一个棋盘游戏,我必须在棋盘的一个区域放置多个玩家,我想用网格布局来实现,但我无法确定正确的位置。
我想让容器内只有一个 div 占据整个空间。 如果容器内有两个 div,则两个项目并排占用一半空间。 如果两行里面有三四个div,每行有两个div并排。
我当前的代码是:
#board td{
background-color: black;
height: 50px;
width: 50px;
}
#board td .playersDiv {
height: 100%;
width: 100%;
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: 1fr 1fr;
}
#board td .playersDiv div{
background-image: url('red.png');
width: 100%;
height: 100%;
background-size: cover;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<table id="board">
<tr>
<td>
<div class="playersDiv">
<div></div>
<div></div>
<div></div>
</div>
</td>
</tr>
</table>
</body>
</html>
【问题讨论】:
-
可以选择使用 flex 吗?
-
很遗憾,没有。
-
您说如果容器内只有一个 div,它会占用整个空间。如果容器内有两个 div,则占用一半空间。你说的容器是
. playersDiv?在您的代码示例中有 3 个 div,这是否意味着您可以拥有超过 2 个?有上限吗? -
容器是“.playersDiv”。内部的最大 div 为 4。内部的最小 div 为 1。