将元素的大小约束为给定大小的倍数

时间:2010-09-09 15:16:43

标签: html css xhtml

如果我有div扩展到其内容,我如何确保其高度始终是给定值的倍数,比如50像素?有没有办法用CSS做到这一点,还是我需要求助于JavaScript?

2 个答案:

答案 0 :(得分:2)

由于CSS不知道实际的计算元素维度,因此无法实现您的要求。 JavaScript可以轻松完成此任务。

答案 1 :(得分:1)

你需要JavaScript。如果内容没有内联更改(使用ajax或jquery或任何东西),您可以使用onload事件来启动检查高度并修复它的脚本:

<body onload="javascript:fixHeight()">
  <div id="thediv"> 
    content
  </div>
</body>

脚本:

function fixHeight() {
    var thediv = document.getElementById('thediv');
    thediv.style.height = ceil(thediv.offsetHeight / 50) * 50 + 'px';
}  

(未经测试)