我正忙于网格布局,网格的每个 div 中都有图像。但我想让每个图像都成为一个正方形,所以必须隐藏所有溢出。我唯一的问题是,宽度设置为 '20%' 如何让高度成为该 div 的确切宽度?
问问题
783 次
2 回答
1
您可以使用padding-bottom:100%
此技术对于保持对象的纵横比(在您的情况下为平方比)非常有用。唯一的缺点是div
必须设置为position:relative
并且内部必须有带有 的元素position:absolute
。
于 2012-10-28T22:27:07.657 回答
1
感谢 Carlos Martinez,这就是我所需要的:http: //jsfiddle.net/wSbnj/2/
div#image {
box-sizing: border-box;
border:1px solid red;
position:relative;
width:50%;
padding-bottom:50%;
overflow:hidden;
}
div#image img {
position:absolute;
width:100%;
}
<div id="wrapper">
<div id="image"><img src="http://static.zara.net/photos//2012/I/0/2/p/5618/655/802/5618655802_1_1_3.jpg?timestamp=1350490400442"></div>
</div>
</p>
于 2012-10-28T23:28:16.020 回答