我正在尝试创建一个带图像的导航栏(向左浮动)和ul(向右浮动)。
我似乎无法弄清楚如何让ul在导航栏中垂直居中,因此它位于最右侧图像的中间位置。
我希望得到这样的东西:
代码:http://cssdeck.com/labs/ysv3itqa
HTML:
<div class="top">
<img src="http://static1.squarespace.com/static/553aa046e4b0fe84386ad100/t/55e5e602e4b0011b63cf4a51/1441129987213/applelogo.png" alt="">
<div class="outerNav">
<ul class="nav">
<li>Home</li>
<li>About</li>
<li>Videos</li>
<li>Photos</li>
<li>Contact</li>
</ul>
</div>
</div>
<div class="clear"></div>
</div>
CSS:
.container {
height: auto;
width: 100%;
}
.top {
background-color:black;
width: 100%;
padding: 0px 0px;
float:left;
margin:0 auto;
}
.top img {
width: 30px;
border: 1px solid red;
float:left;
}
.top .nav {
border: 1px solid red;
width: 50%;
float:right;
text-align: right;
}
.top .nav li {
display: inline-block;
color:white;
}
.clear {
clear: both;
}
答案 0 :(得分:0)
认为这会有所帮助
.top .nav {
border: 1px solid red;
width: 50%;
float:right;
text-align: right;
margin-top:0px; /* reset top margin for ul */
}
.top .nav li {
display: inline-block;
color:white;
line-height:32px; /* height of your image */
vertical-align:middle;
}
答案 1 :(得分:0)
请更新以下样式。
.top {
background-color: black;
width: 100%;
padding: 10px 0px;
float: left;
margin: 0 auto;
}
.top .nav {
border: 1px solid red;
width: 50%;
float:right;
text-align: right;
margin: 0;}
.top .nav li {
display: inline-block;
color:white;
line-height:32px; /* height of your image */
vertical-align:middle;
}
答案 2 :(得分:0)
试试这个https://jsfiddle.net/2Lzo9vfc/52/
HTML
<div class="top">
<div class="left">
<img src="http://static1.squarespace.com/static/553aa046e4b0fe84386ad100/t/55e5e602e4b0011b63cf4a51/1441129987213/applelogo.png" alt="">
</div>
<div class="outerNav">
<ul class="nav">
<li>Home</li>
<li>About</li>
<li>Videos</li>
<li>Photos</li>
<li>Contact</li>
</ul>
</div>
</div>
<div class="clear"></div>
</div>
<强> CSS 强>
.container {
height: auto;
width: 100%;
}
.top {
background-color:black;
width: 100%;
padding: 0px 0px;
margin:0 auto;
display: table;
}
.top img {
width: 50px;
border: 1px solid red;
}
.top .nav {
border: 1px solid red;
text-align: right;
}
.top .nav li {
display: inline-block;
color:white;
}
.clear {
clear: both;
}
.left {
display: table-cell;
vertical-align: middle;
}
.outerNav {
display: table-cell;
vertical-align: middle;
width: 30%;
}
修改强> 也许更好地从导航中移除宽度https://jsfiddle.net/2Lzo9vfc/53/