【发布时间】:2019-04-22 14:58:05
【问题描述】:
我一直在努力解决这个问题。我想学习的是了解使用语义 HTML 将元素垂直居中导航的不同方法。我希望我的徽标在左侧,导航在右侧。
我尝试在导航元素上使用浮动,但徽标会损坏并且不会垂直居中。我为此使用了 clearfix,但我仍然找不到将徽标和导航垂直居中的方法。
你能帮帮我吗?请解释一下你的答案?那么如果可能的话,你能告诉我使用我的 html 的确切格式垂直居中徽标(左)和导航(右)的其他方法吗?
这是我的代码: https://codepen.io/yortz/pen/pQdKWd
HTML
<!-- HEADER -->
<header>
<!-- LOGO -->
<a href="#"><img id="site-logo" src="http://lorempixel.com/190/25/" alt="Bookworm"></a>
<nav>
<ul class="clearfix">
<li><a href="#">About</a></li>
<li><a href="#">Articles</a></li>
<li><a href="#">News</a></li>
<li><a href="#">Get in Touch</a></li>
</ul>
</nav>
</header>
CSS
* {
box-sizing: border-box;
}
/* HIGHLIGHTING NAVIGATION ELEMENTS */
header {
background-color: #ccc;
}
nav {
background-color: aqua;
}
/* CENTERING NAVIGATION */
header {
width: 100%;
}
#site-logo,
nav {
display: inline-block;
vertical-align: middle;
}
nav ul {
list-style-type: none;
padding-left: 0;
}
nav ul li {
display: inline-block;
}
nav ul li a {
border: 1px solid red;
padding: 10px 15px;
display: block;
text-decoration: none;
}
nav ul li a:hover {
background-color: red;
color: #fff;
}
/* CLEAR FLOATS */
.clearfix::after {
content: "";
display: table;
clear: both;
}
请帮忙。谢谢!
【问题讨论】:
-
我忘了说,你能不使用flexbox解决这个问题吗?
-
您可能想要编辑您的问题并添加该信息
标签: html css navigation center vertical-alignment