属性text-align: center;一个好方法来中心使用CSS图像?
img {
text-align: center;
}
属性text-align: center;一个好方法来中心使用CSS图像?
img {
text-align: center;
}
当前回答
我发现,如果我在一个div中有一个图像和一些文本,那么我可以使用text-align:center一次性对齐文本和图像。
HTML:
<div class="picture-group">
<h2 class="picture-title">Picture #1</h2>
<img src="http://lorempixel.com/99/100/" alt="" class="picture-img" />
<p class="picture-caption">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Temporibus sapiente fuga, quia?</p>
</div>
CSS:
.picture-group {
border: 1px solid black;
width: 25%;
float: left;
height: 300px;
#overflow:scroll;
padding: 5px;
text-align:center;
}
CodePen: https://codepen.io/artforlife/pen/MoBzrL?editors=1100
其他回答
使用网格来堆叠图像。这很简单,这是代码
.grid {
display:grid;
}
.grid img {
display:block;
margin:0 auto;
}
除非你需要支持旧版的ie浏览器。
现代的方法是在CSS中使用margin: 0 auto。
例如:http://jsfiddle.net/bKRMY/
HTML:
<p>Hello the following image is centered</p>
<p class="pic"><img src="https://twimg0-a.akamaihd.net/profile_images/440228301/StackoverflowLogo_reasonably_small.png"/></p>
<p>Did it work?</p>
CSS:
p.pic {
width: 48px;
margin: 0 auto;
}
这里唯一的问题是,段落的宽度必须与图像的宽度相同。如果你没有在段落上设置宽度,它将不起作用,因为它将假设100%并且你的图像将向左对齐,当然除非你使用text-align:center。
如果你喜欢,可以试试这把小提琴。
另一种缩放方法-显示它:
img {
width: 60%; /* Or required size of image. */
margin-left: 20% /* Or scale it to move image. */
margin-right: 20% /* It doesn't matters much if using left and width */
}
将非背景图像居中取决于您想要将图像显示为内联(默认行为)还是块元素。
内联情况
如果你想保持图像的CSS属性的默认行为,你需要将你的图像包装在另一个块元素中,你必须设置text-align: center;
块格
如果你想把图像看作一个单独的块元素,那么text-align属性没有意义,你应该这样做:
IMG.display {
display: block;
margin-left: auto;
margin-right: auto;
}
你问题的答案是:
属性text-align: center;将图像居中的好方法 使用CSS呢?
是也不是。
是的,如果图像是其包装器中的唯一元素。 不,如果你在图像的包装器中有其他元素,因为所有的子元素都是图像的兄弟姐妹,将继承text-align属性:并且可能你不喜欢这个副作用。
参考文献
内联元素列表 定心的事情
我找到的最简单的解决方案是添加到我的img-element:
style="display:block;margin:auto;"
看来我不需要像别人建议的那样在auto前面加0。也许这是正确的方法,但对于我的目的来说,没有“0”也足够了。至少在最新的Firefox、Chrome和Edge上是这样。