[英]vertically align img inside floated div
有5个浮动的div
使用Javascript将高度拉伸到document
高度的100%。 所有5个都包含img
元素。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<link type="text/css" rel="stylesheet" href="style.css"/>
</head>
<body>
<div id="wrapper">
<div id="static"><img src="http://www.rs.dhamma.org/wheel.gif"/></div>
<div><img src="http://www.rs.dhamma.org/wheel.gif"/></div>
<div><img src="http://www.rs.dhamma.org/wheel.gif"/></div>
<div><img src="http://www.rs.dhamma.org/wheel.gif"/></div>
<div class="clear"><img src="http://www.rs.dhamma.org/wheel.gif"/></div>
</div>
</body>
</html>
使用Javascript:
//sets columns height to 100%;
function colsHeight(){
var docHeight = $(document).height();
$("#wrapper div").height(docHeight);
};
$(document).ready(function(){
colsHeight();
});
和CSS:
*{
margin: 0;
padding: 0;
}
#wrapper{
width: 1000px;
margin: 0 auto;
}
#wrapper div{
padding: 0 20px;
background-color: #9F81F7;
float: left;
border-right: 1px solid black;
}
#wrapper img{
}
div.clear:after{
content: " ";
clear: both;
}
我已经尝试设置父级的div
display: table
和img
display: table-cell, vertical-align: middle
但没有运气。 定义margin-top: 50%
表现出任何预期。
任何帮助赞赏。
谢谢!
您可以绝对定位它们,然后设置top: 50%
和margin-top: -63px
。 当然,这只有在您知道图像的高度(在您的情况下为126px
) 126px
。 如果图像大小是动态的,最简单但令人讨厌的方法是在加载后使用js在图像上设置margin-top。
无论如何,静态方法可以在这里看到: http : //jsfiddle.net/3gqcS/2/
因为你使用javascript和jQuery(不能没有他)你可以做....
检查一下: http : //jsfiddle.net/828pW/
这是代码:
function verticalAlignImage(img)
{
if(img.height)
{
$(img).css({
position:'absolute',
top: ($(img).parent().height() - img.height)/2
}).parent().css('position', 'relative');
}
else
{
setTimeout(function(){
verticalAlignImage(img);
}, 100);
}
}
这感觉有点脏,但你可以将div的line-height设置为div height + image height然后overflow:hidden
<div id="static" style="height: 481px; line-height: 607px; overflow: hidden;">
尝试设置列:
position:relative;
width:<width>;/* width must be set */
和图像:
position:absolute;
top:0;
bottom:0;
margin:auto 0;
这应该完美地居中,然后你需要设置列宽,因为绝对定位的图像根本不占用任何空间。
另外,不要使用java脚本,只需添加:
html, body, #wrapper, #wrapper div{height:100%;}
代替。
从以下网站获取: http : //www.tutwow.com/htmlcss/quick-tip-css-100-height/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.