如何垂直居中对齐具有背景图像的div
这个问题在这里已经有了答案:
使用这个CSS。 您将拥有垂直居中的Google徽标。
#imgDiv {
width: 300px;
height: 100px;
background-image: url("http://www.google.com/intl/en_com/images/srpr/logo3w.png");
background-repeat: no-repeat;
border: 1px solid blue;
position:relative;
top: 50%;
-moz-transform: translatey(-50%);
-ms-transform: translatey(-50%);
-o-transform: translatey(-50%);
-webkit-transform: translatey(-50%);
transform: translatey(-50%);
}
最简单的方法是将#imgDiv的高度设置为高度:100%; 然后将背景位置设置为居中,居中。
#imgDiv {
width: 300px;
height: 100%;
background-image: url("http://www.google.com/intl/en_com/images/srpr/logo3w.png");
background-repeat: no-repeat;
border: 1px solid blue;
background-position:center,center;
}
试试像这样: Demo
根据您的要求更新演示 : 注意:如果文本高度增加,背景图像将向上移动
div.outer {
display:table;
border: 1px solid red;
height:300px;
width:300px
}
.inner {
display:table-cell;
vertical-align:middle;
line-height:normal;
margin:0 auto;
text-align:center;
}
#imgDiv {
width: 300px;
height: 100px;
background-image: url("http://www.google.com/intl/en_com/images/srpr/logo3w.png");
background-position: center;
background-repeat: no-repeat;
border: 1px solid blue;
}
#spanid {
text-align: center;
}
HTML:
<div class="outer">
<div class="inner">
<div id="imgDiv"></div> <span id="spanid">Some text....</span>
</div>
</div>
链接地址: http://www.djcxy.com/p/41507.html
上一篇: How to vertically center align div having back ground image
下一篇: How to vertically align text on top of an absolutely positioned div