谁能告诉我为什么这不起作用?我试图将图像居中。
CSS
.img-center {
display: block;
margin-left: auto;
margin-right: auto;
}
HTML
<div class="container">
<section id="whats-on">
<h1>News</h1>
<div class="img-center">
<a href="#"><img src="assets/img/my-image.png"></a>
</div>
</section>
</div><!-- container -->
答案 0 :(得分:1)
img-center
容器的宽度为100%(默认情况下),因此它已经居中但覆盖了所有视口的宽度。这是因为div
是block
元素,而DOCumentation是
块级元素始终在新行上开始并占用可用的全部宽度(尽可能向左和向右延伸)。
<div>
元素是块级元素。
因此您可以删除display:block
选项A。将text-align:center
添加到.img-container
对于此选项,您可以删除所有其他样式
.img-center {
text-align:Center;
}
&#13;
<div class="container">
<section id="whats-on">
<h1>News</h1>
<div class="img-center">
<a href="#"><img src="http://placehold.it/350x150"></a>
</div>
</section>
</div><!-- container -->
&#13;
选项B。将样式提供给img
而不是它的容器
对于此选项,您需要将display:block
保留为img
,因为img
默认为inline
元素
.img-center img {
display: block;
margin-left: auto;
margin-right: auto;
}
&#13;
<div class="container">
<section id="whats-on">
<h1>News</h1>
<div class="img-center">
<a href="#"><img src="http://placehold.it/350x150"></a>
</div>
</section>
</div><!-- container -->
&#13;
答案 1 :(得分:0)
你的代码集中了图像的容器(已经是全宽,也就是说什么也没做),而不是容器内的图像本身。就这样做:
img {
display: block;
margin-left: auto;
margin-right: auto;
}
答案 2 :(得分:0)
只需将text-align: center;
添加到.img-center
答案 3 :(得分:-1)
这与您的<div class="img-center">
没有设定宽度有关。
添加width:100px;
只是为了查看。