我找到了this article,我觉得我喜欢它们设置链接和按钮的方式。 所以我从文章中获取了CSS ...
.buttons a, .buttons button{
display:block;
float:left;
margin:0 7px 0 0;
background-color:#f5f5f5;
border:1px solid #dedede;
border-top:1px solid #eee;
border-left:1px solid #eee;
font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif;
font-size:100%;
line-height:130%;
text-decoration:none;
font-weight:bold;
color:#565656;
cursor:pointer;
padding:5px 10px 6px 7px; /* Links */
}
.buttons button{
width:auto;
overflow:visible;
padding:4px 10px 3px 7px; /* IE6 */
}
.buttons button[type]{
padding:5px 10px 5px 7px; /* Firefox */
line-height:17px; /* Safari */
}
*:first-child+html button[type]{
padding:4px 10px 3px 7px; /* IE7 */
}
.buttons button img, .buttons a img{
margin:0 3px -3px 0 !important;
padding:0;
border:none;
width:16px;
height:16px;
}
然后,我想连续使用几个按钮......
<div class="buttons">
<a href="/password/reset/"><img src="pict1.png" class="positive" alt=""/>Button 1</a>
<a href="/password/reset/"><img src="pict2.png" alt=""/>Button 2</a>
<a href="/password/reset/"><img src="pict3.png" class="negative" alt=""/>Button 3</a>
</div>
请参阅此示例:http://reljac.com/csstest.php
但是那一排按钮可能需要对齐中心,而不是全部向右或向左。如果我将CSS更改为...
.buttons a, .buttons button{
/*display:block;
float:left;*/
margin:0 7px 0 0;
当有图像时,按钮不再正确显示,特别是在IE 6,7&amp; 8。
请参阅此示例:http://reljac.com/csstest_wo.php
我可以将浮动更改为右边以使按钮对齐,但我无法弄清楚要使它们居中(如<td></td>
中所示)。
所以缺点是我想要使用这种风格,但我还需要能够在必要时对按钮进行对齐。
答案 0 :(得分:20)
尝试将此添加到CSS:
.buttons
{
text-align:center;
margin: 0px auto 0px auto;
}
自动使每边的边距相等。 text-align是旧浏览器的一个小工具。
在名为buttonwrapper的按钮周围添加一个额外的div。然后应用此CSS
.buttonwrapper
{
position:relative;
float:left;
left:50%;
}
.buttons
{
position:relative;
float:left;
left:-50%;
}
采取(但未经过测试)的方法
答案 1 :(得分:0)
我发现,当你有一个父div浮动和一个孩子div你想要居中时,很多时候人们会忘记继承。
HTML:
<div class="parent">
<div class="child">
Text
</div>
</div>
CSS:
.parent {
float: left;
width: 300px;
}
.child {
float: none; /* <-- IMPORTANT! */
width: 200px;
margin-left: auto;
margin-right: auto;
}
重要: 继承声明子div也向左浮动。所以,确保子div没有浮动,然后保证:像往常一样自动。