我正在尝试使用保证金将我的按钮'浏览器组合'居中:0px auto; 。请有人可以使用下面的html和CSS来解释为什么这不起作用?
<div class="portfolio">
<div class="container">
<h3>Portfolio</h3>
<div class="group1">
<img src="http:....." style="height: 506px; width: 675px">
<div class="group2">
<h3>Client</h3>
<h4>JPMorgan</h4>
<h3>Role in Project</h3>
<h4>Project Lead</h4>
<h3>Project Included</h3>
<h4>Mobile and Web Interface</h4>
<a href="#">Browser</a>
</div>
</div>
<div class="group3">
<a href="#">Browser Portfolio</a>
</div>
</div>
</div>
<style>
.portfolio .group3 {
font-size: 0.9em;
padding: 0.7em 1.5em;
color: #5EC7E5;
border-radius: 5px;
font-weight: 600;
border: 1px solid red;
position: relative;
margin: 0px auto;
display: inline-block;
width: 100%;
}
</style>
答案 0 :(得分:3)
要使用margin: auto
来居中元素,他们必须使用display: block
并具有明确的宽度。
将此类添加到您的CSS将使其工作:
.group3 a {
display: block;
width: 110px;
margin: 0 auto;
}
或者,您可以使用text-align: center
作为其他答案。
请参阅JS Fiddle:http://jsfiddle.net/rbuzach0/
修改:当您问为什么某些属性没有从您的<div>
包含到您的<a>
时,这里有一个列表(来自CSS2.1规范) ,但这就是我能用简洁的形式找到的,哪些属性会继承,哪些属性不会:http://www.w3.org/TR/CSS21/propidx.html
检查“继承?”柱。你会看到Display和Margin都没有继承。
答案 1 :(得分:1)
只需将text-align:center添加到.group3元素:
.group3 {
text-align:center;
}
如果在对象上指定了已应用margin的宽度:0 auto to,则该对象将集中在其父容器中。
答案 2 :(得分:0)