【发布时间】:2019-12-05 04:07:39
【问题描述】:
我正在尝试使用网格制作游戏。我有 x div,里面有 x div,用于创建网格。
问题在于,我希望所有这些的容器 div 都尽可能大(例如,5x5 正方形,每个 25px = 125px x 125px 容器 div)。高度很好,但宽度延伸到最后。每个框为 25px。
我试过grid-template-rows: repeat(auto-fill, 25px) 似乎不起作用。我无法将其设置为特定宽度(125 像素),因为正方形的数量将是动态的(但始终是平方数)。
* {
margin: 0px;
padding: 0px;
box-sizing: border-box;
}
#start {
position: relative;
width: auto;
margin: 50px auto;
display: grid;
grid-template-rows: repeat(auto-fill, 25px);
}
.row {
display: grid;
grid-template-columns: repeat(auto-fill, 25px);
}
.gameNode {
margin: 0px;
height: 25px;
width: 25px;
}
.even {
background-color: #666;
}
.odd {
background-color: #999;
}
<div id="start">
<div id="row_0" class="row">
<div class="gameNode odd" id="node_1"></div>
<div class="gameNode even" id="node_2"></div>
<div class="gameNode odd" id="node_3"></div>
<div class="gameNode even" id="node_4"></div>
<div class="gameNode odd" id="node_5"></div>
</div>
<div id="row_1" class="row">
<div class="gameNode even" id="node_6"></div>
<div class="gameNode odd" id="node_7"></div>
<div class="gameNode even" id="node_8"></div>
<div class="gameNode odd" id="node_9"></div>
<div class="gameNode even" id="node_10"></div>
</div>
<div id="row_2" class="row">
<div class="gameNode odd" id="node_11"></div>
<div class="gameNode even" id="node_12"></div>
<div class="gameNode odd" id="node_13"></div>
<div class="gameNode even" id="node_14"></div>
<div class="gameNode odd" id="node_15"></div>
</div>
<div id="row_3" class="row">
<div class="gameNode even" id="node_16"></div>
<div class="gameNode odd" id="node_17"></div>
<div class="gameNode even" id="node_18"></div>
<div class="gameNode odd" id="node_19"></div>
<div class="gameNode even" id="node_20"></div>
</div>
<div id="row_4" class="row">
<div class="gameNode odd" id="node_21"></div>
<div class="gameNode even" id="node_22"></div>
<div class="gameNode odd" id="node_23"></div>
<div class="gameNode even" id="node_24"></div>
<div class="gameNode odd" id="node_25"></div>
</div>
</div>
我希望容器 div 只占用与正方形一样多的空间,但它会延伸到整个页面。高度看起来不错。
这是它正在执行的操作的屏幕截图:
它创建了一堆额外的方块,填充空间而不是仅仅填充实际的 div。
我是否正确处理了这个问题,或者我应该以不同的方式格式化我的 HTML 以获得预期的效果?
【问题讨论】: