gpt4 book ai didi

css - 使用 css 网格的垂直和水平居中的 4x4 正方形网格

转载 作者:行者123 更新时间:2023-11-28 11:23:32 24 4
gpt4 key购买 nike

我想使用 div 和 css-grid 编写 2048 游戏。这就是我想象的输出: enter image description here

我有适合浏览器窗口的外部部分,我只想在中左 div(称为 game-container)的中间(水平和垂直)写 4x4 网格)

<div class = "game-container">
<div class = "game">
<div class = "game-cell"></div>
<!-- 16 game cells total -->
<div class = "game-cell"></div>
</div>
</div>

我使用以下方法制作了一个 4x4 网格:

div.game {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(4, 1fr);
}

但是,我有一些问题:

  • 如何制作每个 game-cell 正方形(比如 50px)
  • 如何在 game-cell 中间显示数字
  • 如何让div相互接触

我可以制作其中的每一个,但不能一次全部制作。

此外,如何在game-container div的中间(如图)显示game div。

附言。如果可以简化某些事情,我不介意使用一些 Bootstrap。


关于外容器的一些信息:

html, body, div.container{
height: 100%;
margin: 0;
padding: 0;
}

div.container {
display:grid;
grid-template-rows: 3fr 9fr 2fr;
grid-template-columns: 3fr 5fr;
grid-gap: 2px;
background-color: yellow;
}

最佳答案

使用 flexbox 在网格外实现它。

div.game {
display: grid;
width: 50vw;
height: 50vh;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(4, 1fr);
width: 120px;
height: 120px
}

.game-cell {
width: 30px;
height: 30px;
border: 1px solid ;
box-sizing: border-box;
}

.left-half{
width: 50vw;
height: 100vh;
border: 1px solid red;
display: flex;
align-items: center;
justify-content: center;
}

body{
padding: 0;
margin: 0;
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<div class = "game-container">
<div class="left-half">
<div class = "game">
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
<div class="game-cell"></div>
</div>
</div>
</div>
</body>
</html>

关于css - 使用 css 网格的垂直和水平居中的 4x4 正方形网格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50159578/

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