【问题标题】:Image center align vertically and horizontally [duplicate]图像中心垂直和水平对齐[重复]
【发布时间】:2011-07-25 19:21:35
【问题描述】:

嗨,我想放置一个垂直和水平居中对齐的图像, 我的 HTML 标记是

<ul class="big-wrapper">
<li>
<div class="filler" style="vertical-align: middle; display: inline-block;">
    <img src="7-612x612-2.png" original="/7-612x612-2.png" style="margin: 0pt auto; display: table-cell; text-align: center; vertical-align: middle;">
</div>
</li>
<li>
<div class="filler" style="vertical-align: middle; display: inline-block;">
    <img src="7-612x612-2.png" original="/7-612x612-2.png" style="margin: 0pt auto; display: table-cell; text-align: center; vertical-align: middle;">

</li>
</ul>

Used Css
ul.big-wrapper li > div {
height:612px;
width:612px;
}

ul.big-wrappe li {
float:left;
margin:0 20px 20px 0;
position:relative;
text-align:center;
}

在做了所有这些事情之后,我无法这样做。请看看并帮助我。

【问题讨论】:

标签: html css


【解决方案1】:

有一些很好的方法可以使元素水平和垂直居中,这取决于情况和您的偏好。

使用以下标记:

<div><img src="a.png" width="100" height="100"></div>

行高

div { width:300px; height:300px; line-height:300px; text-align:center; }
div img { vertical-align:middle; }

很好的快速修复,不会过多地混淆positioning,但如果实际上文本以这种方式居中可能会出现问题。

显示:表格单元格

div { width:300px; height:300px; text-align:center; display:table-cell; vertical-align:middle; }

工作起来就像好的旧表一样并且高度灵活,但仅在现代浏览器中受支持。

位置:绝对

div { width:300px; height:300px; position:relative; }
div img { top:-50px; left:-50px; position:absolute; margin:50% 0 0 50%; }

topleft 偏移量应设置为被定位元素各自尺寸的一半。如果包含元素需要灵活但需要绝对值才能工作,则效果很好。


所有技术的演示:jsfiddle.net/Marcel/JQbea (fullscreen)

【讨论】:

    【解决方案2】:

    为什么不直接删除 img 标记,然后将图像设置为 background 并像这样居中:

    (内联,但通过外部 css 文件是最好的方法)

    <div style="background: url('7-612x612-2.png') no-repeat center center transparent;">&nbsp;</div>
    

    【讨论】:

    • 不,由于我的要求,我不能这样做。
    • 这成功了。谢谢你
    • 如果你想让图片有边框颜色怎么办?
    猜你喜欢
    • 2018-06-23
    • 2012-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-26
    • 2020-10-21
    • 1970-01-01
    相关资源
    最近更新 更多