[英]How can I horizontally and vertically center an <img> in a <div>?
我不想以div为中心,我希望div的内容居中。 我想水平和垂直对齐。
对不起,如果这太容易或者其他什么,但这对于纠正它来说是一件麻烦事。
GRAE
我正在使用IE7
如果你知道你的形象的高度和宽度,它定位绝对,机顶盒/左到50%,边距/左负一半的高度/图像宽度。
#foo {
position:relative; /* Ensure that this is a positioned parent */
}
#foo img {
width:240px;
height:200px;
position:absolute;
left:50%;
top:50%;
margin-left:-120px;
margin-top:-100px;
}
实例: http : //jsfiddle.net/Zd2pz/
我知道你已经说过不想以div为中心,但是以跨浏览器的方式实现你的需求会更容易使用jquery插件和包含你的元素的假div。
我已经使用这个非常小的插件成功地集中了任何东西,可以将任何块元素居中。
我知道的另一种方式是你已经从@simshaun和@Prhogz收到的答案
编辑:根据评论请求
在脚本标记中包含脚本
<script type="text/javascript" src="<%: Url.Content( "~/_assets/js/jquery.center.min.js" )%>"></script>
现在,如果您有一个想要在标记中居中的DIV,只需将其用作
$(document).ready(function() {
$("#myDIV").center({ vertical: false });
});
虽然以下内容已经过时 ,但它仍适用于几乎所有浏览器
<center>
<div>
your html
</div>
</center>
但是,请访问此链接
http://www.110mb.com/forum/vertical-horizontal-alignment-of-image-within-div-t31709.0.html
对于水平对齐,请使用text-align:center;
有关垂直对齐的信息,请参阅W3样式指南
如果事先知道内部元素的高度,
CSS:
.container {
text-align: center; /* Center horizontally. */
/* For demo only */
border: 1px solid #000;
height: 500px;
margin: 20px;
width: 700px;
}
.container img {
margin-top: -167px;
position: relative;
top: 50%;
}
HTML:
<div class="container">
<img src="http://farm6.static.flickr.com/5004/5270561847_7223069d5e.jpg" width="500" height="334" alt="">
</div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.