我正在使用HTML5和CSS3来制作布局。
我需要在页面上的瓷砖,这是一个正方形的div元素。磁贴在引导列中,我需要宽度自动匹配列的宽度,但我发现很难让高度=宽度,因为宽度是一个百分比值: 100%。
HTML:
...
<div class="col-md-2">
<div class="tile tile-square tile-auto">
...
</div>
</div>
...CSS:
.tile-square{
width: 100%;
height: how to do this?
}我可以使用jQuery/js解决方案,但我更喜欢使用CSS3来单独解决这个问题。CSS3中有一个"calc()“语句,但我不知道它是否能实现此功能。
发布于 2013-12-09 13:17:33
对于纯CSS2.1,您可以通过设置padding-top: 100%来使框保持1:1的比例(因为垂直填充是根据容器的宽度而不是高度计算的)。您问题的注释提供了一些带有示例的链接。
发布于 2013-12-09 13:29:50
使用jQuery完成
var x = $('.element').width();
$('.element').css(
{'height': x + 'px'}
);JSFiddle上的演示
发布于 2013-12-09 13:12:39
我相信你不能只用CSS3来做到这一点。CSS只是简单地设置样式。不过,您可以使用JQuery/JS来实现这一点:
var width = $('div.tile-square').width();
$('div.tile-square').height(width + 'px');或者,您可以这样做(不是首选):
$('div.tile-square').css('height', $('div.tile-square').css('width'));JSFiddle:http://jsfiddle.net/7k8pp/3/
https://stackoverflow.com/questions/20463534
复制相似问题