私は正方形のフレックスボックスを持っています。それは1つのハイパーリンクで完全に覆われています。フレックスボックス - 中央のテキスト
ここで、フレックスボックスのコンテンツを垂直方向に集中させたいと思います。私は正方形の形状を失うので、
しかし、財産display: table
とプロパティdisplay: table-cell; vertical-align: middle
とネストされたdiv
でdiv
要素を使用すると、動作しません。
ul
とli
の代わりにdiv
を使用すると、どこでもクリックできるという性質が失われます。
私は赤いボックスの水平方向と垂直方向の中央に整列させるための「テキスト」希望:次のようにあなたの.tile delcarationで
body {
margin: 0px;
width: 100%;
}
main {
width: 100%;
display: flex;
flex-wrap: wrap;
}
.flex-container {
width: 100%;
}
ul {
display: flex;
flex-wrap: wrap;
list-style: none;
-webkit-padding-start: 0px;
-webkit-margin-before: 0px;
-webkit-margin-after: 0px;
}
li {
display: flex;
flex-direction: column;
width: 50%;
}
.red {
background-color: red;
}
.white {
background-color: white;
}
.tile:before {
content: '';
float: left;
padding-top: 100%;
}
.tile {
text-align: center;
}
<main>
<div class="flex-container">
<ul>
<li class="red">
<a href="/">
<div class="tile">
Text
</div>
</a>
</li>
</ul>
</div>
</main>
余分のdivを削除、およびリンク自体全体の高さをカバーフレックス項目を作成し、その内容を中心に持っています。 – CBroe