我有一个带有2个浮动div的div
在左侧3个按钮和右侧链接的段落中,单行
当右边的链接变长(或者我决定更多的底部)时,段落会多行,我希望我的按钮垂直居中。
在我的例子中,粗体名称“Joe Smith”工作正常,但如果成为“Joe Smith Brown Jones”,我需要将按钮置于中心位置。 See an example here
CSS:
body { color: #CCCCCC; font-family: 'Lucida Grande', 'Trebuchet MS'; font-size: 100%; }
a, a:link, a:visited, a:focus { color:#4188FB; }
a:active, a:hover { color:#FFCC00; }
.clearboth { clear:both; }
/* header */
.admin-header {
width: 700px;
padding: 15px 10px;
background: #505050;
}
.admin-header-left {
float: left;
}
.admin-header-right {
margin-right: 0px;
}
.admin-header-right p {
text-align: right;
line-height: 150%;
}
/* buttons */
a.nav-btn, a.nav-btn:link, a.nav-btn:visited, a.nav-btn:focus { padding: 5px 15px; margin-right: 2px; text-decoration: none; color: white; background-color: #4188FB; }
a.nav-btn:active, a.nav-btn:hover { color: white; background-color: #FFCC00; }
.rounded-left { -moz-border-radius: 5px 0 0 5px; -webkit-border-radius: 5px 0 0 5px; -opera-border-radius: 5px 0 0 5px; -khtml-border-radius: 5px 0 0 5px; border-radius: 5px 0 0 5px; }
.rounded-right { -moz-border-radius: 0 5px 5px 0; -webkit-border-radius: 0 5px 5px 0; -opera-border-radius: 0 5px 5px 0; -khtml-border-radius: 0 5px 5px 0; border-radius: 0 5px 5px 0; }
HTML:
<div class="admin-header">
<div class="admin-header-left">
<a class="nav-btn rounded-left" href="#">New Order</a><a class="nav-btn" href="#">Invoices</a><a class="nav-btn rounded-right" href="#">Portfolio</a>
</div>
<div class="admin-header-right">
<p>Hello <b>Joe Smith Brown Jones</b> | <a href='#'>account</a> | <a href='#'>settings</a> | <a href='#'>help</a> | <a href='#'>exit</a></p>
</div>
<div class='clearboth'></div>
</div>
答案 0 :(得分:1)
您可以尝试:
display:table,table-row,table-cell
在这种情况下,您将能够使用vertical-align属性:
您可以在此处查看更新的示例:http://jsfiddle.net/HPKTa/1/
不幸的是,这在IE6中不起作用。对于IE6,您可以使用javascript定位按钮。
答案 1 :(得分:0)
您必须使用此CSS属性
display:table-cell; vertical-align:middle;