属性text-align: center;一个好方法来中心使用CSS图像?
img {
text-align: center;
}
属性text-align: center;一个好方法来中心使用CSS图像?
img {
text-align: center;
}
当前回答
除非你需要支持旧版的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{
display: block;
margin-right: auto;
margin-left: auto;
}
使用这个到你的img CSS:
img {
margin-right: auto;
margin-left: auto;
}
这将不起作用,因为text-align属性适用于块容器,而不是内联元素,而img是一个内联元素。请参阅W3C规范。
用这个代替:
img。中心{ 显示:块; 保证金:0自动; } < span style=" font - family:宋体;"> <img class="center" src ="https://cdn.sstatic.net/Sites/stackoverflow/company/img/logos/so/so-icon.png?v=c78bd457575a"> < / div >
我建议有三种方法来居中一个元素:
Using the text-align property .parent { text-align: center; } <div class="parent"> <img src="https://placehold.it/60/60" /> </div> Using the margin property img { display: block; margin: 0 auto; } <img src="https://placehold.it/60/60" /> Using the position property img { display: block; position: relative; left: -50%; } .parent { position: absolute; left: 50%; } <div class="parent"> <img src="https://placehold.it/60/60" /> </div>
第一种和第二种方法只在父元素至少和图像一样宽的情况下才有效。当图像比其父图像宽时,图像将不会保持居中!!
但是: 第三种方法是一个很好的方法!
这里有一个例子:
img { 显示:块; 位置:相对; 左:-50%; } .parent { 位置:绝对的; 左:50%; } < div class = "父" > <img src="http://imgsv.imaging.nikon.com/lineup/lens/zoom/normalzoom/af-s_dx_18-140mmf_35-56g_ed_vr/img/sample/img_01.jpg" /> < / div >
如果你的img元素在一个div中,它本身在另一个div中,它的显示被设置为flexbox,就像我这里的例子: (HTML)
<nav class="header">
<div class="image">
<img
src=troll
alt="trollface"
></img>
</div>
<div class="title">
Meme Generator
</div>
<div class="subtitle">
React Course - Project 3
</div>
</nav>
(CSS)
.header{
display: flex;
}
.image{
width: 5%;
height: 100%;
}
.image > img{
width: 100%;
}
你可以这样设置你的。image div垂直对齐:
.image{
width: 5%;
height: 100%;
align-self: center;
}