好的,所以我正在学习flexbox,但我无法理解为什么我的导航标题位于链接之上。
HTML:
<style>
@import url(https://fonts.googleapis.com/css?family=Oswald:400,700);
.box {
display: flex;
}
.item {
width: 100px;
height: 100px;
background-color: red;
margin: auto;
color: #fff;
}
nav {
font-family: "Oswald", sans-serif;
display: flex;
min-width: 100%;
background-color: #181818;
}
nav ul {
list-style: none;
margin: 0;
padding: 0;
display: flex;
max-width: 960px
}
nav a {
display: block;
padding: 1rem;
text-decoration: none;
color: #fff;
font-weight: 400;
transition: all 0.3s ease-in-out;
}
nav a:hover {
color: #343434;
}
.title {
margin: 0 35px 0 10px;
color: #1BC;
}
</style>
<nav>
<div class="container">
<a class="title">Architect</a>
<ul>
<li><a href="#">Getting Started</a></li>
<li><a href="#">Examples</a></li>
<li><a href="#">Blog</a></li>
<li><a href="#">Forum</a></li>
</ul>
</div>
</nav>
容器CSS:
.container{
width: 100%;
margin: 0 auto:
max-width: 1200px;
}
Code Pen Link:http://codepen.io/ZoidCraft/pen/XKMewy
我希望标题“Architect”与链接的左侧对齐。
答案 0 :(得分:0)
您在css中将<a class="title">Architect</a>
设置为display: block;
。块级元素将占用自己的行。 display: flex;
元素也将占用自己的一行。
要解决您的问题,您可以先从display: block;
样式中删除nav a
。然后将nav ul
从display: flex;
更改为display: inline-flex;
。现在您只需要向nav
添加一些填充,因为现在所有内容都显示为内嵌,因此请padding: 1em 0;
添加nav
以下是我所谈论的更新CodePen。