私はピクセルベースのナビゲーションバーが必要なウェブサイトを持っています - この場合はheight: 80px
です。固定された高さのコンテナに要素を垂直にセンタリングする
問題は、ul
とli
要素を垂直方向に配置することができないということです。
私は、私のjsfiddleに示されているようにtop:50%; transform: translate(0,-50%)
を試していますが、フレックスポジショニングもしていますが、どれもうまくいきませんでした。
Jsfiddle:https://jsfiddle.net/agreyfield91/w3s8cj92/
header {
height: 80px;
position: fixed;
top: 0;
transition: top 0.2s ease-in-out;
width: 100%;
}
footer {
background: #ddd;
}
* {
color: transparent
}
nav {
height: 100%;
width: 100%;
background-color: bisque;
}
nav ul {
list-style: none;
text-align: center;
margin: 0;
padding: 0;
top: 50%;
transform: translate(0, -50%);
}
nav ul li {
display: inline-block;
float: left;
}
nav ul li a {
display: block;
padding: 15px;
text-decoration: none;
color: #aaa;
font-weight: 800;
text-transform: uppercase;
margin: 0 10px;
}
<header class="nav-down">
<nav class="headernav">
<ul>
<li><a href="#">Gig</a></li>
<li><a href="#">ity</a></li>
<li><a href="#">element</a></li>
</ul>
</nav>
</header>
置き換え:相対;オーバーフロー:隠された; '' nav ul'ルール。トランスフォームの作業を行い、オーバーフロー:隠された "position:relative;"を子どもから浮かび上がらせ、クリアする必要があります。 [** Fiddle demo **](https://jsfiddle.net/LGSon/w3s8cj92/3/) – LGSon