我发现了两种用CSS将固定宽度元素水平居中的常见方法,希望有人能帮我更深入地理解何时使用其中一种技术而不是另一种。
一种技术涉及使用`text-align:center`,而另一种涉及使用`margin:auto`。
下面我演示了如何使用这两种方法来实现相同的效果。看代码,很容易说`margin:auto`方法是全方位更好的方法,但我不禁想知道是否有其他更好的方法来做这种事情,或者是否有情况下`text-align`方法更可取。
您可以在此处查看示例代码:http://dabblet.com/gist/1634534 或以下内容:
一种技术涉及使用`text-align:center`,而另一种涉及使用`margin:auto`。
下面我演示了如何使用这两种方法来实现相同的效果。看代码,很容易说`margin:auto`方法是全方位更好的方法,但我不禁想知道是否有其他更好的方法来做这种事情,或者是否有情况下`text-align`方法更可取。
您可以在此处查看示例代码:http://dabblet.com/gist/1634534 或以下内容:
<div class="wrap1">
<h1>Hey now</h1>
</div>
<div class="wrap2">
<h1>Hey now</h1>
</div>
h1 {
background-color: #CCC;
width: 200px;
}
div.wrap1 {
text-align: center;
background-color: blue;
padding: 5px;
}
div.wrap1 h1 {
display: inline-block;
text-align: left;
}
div.wrap2 {
background-color: red;
padding: 5px;
}
div.wrap2 h1 {
margin: 0 auto;
}
text-align:center
感觉不对。似乎这种情况最好是将内联元素包装在具有margin: 0 auto
的父级中...很难避免“div病”,但我想不到更好的方法。 - Adam Fraser