最近修改以前写的一些代码,发现点问题。
比如2个div需要动态的保持一致的高度。
css的做法是: 可以500%提高开发效率的前端UI框架!
- <div style="overflow:hidden">
- <div id="left" style="margin-bottom:-10000px; padding-bottom:10000px;"></div>
- <div id="right" style="margin-bottom:-10000px; padding-bottom:10000px;"></div>
- </div>
如果实际的高度不大于10000px,那么这个是没有问题的,如果有一边的实际高度大于了10000px,则另外一边的高度只能被定义为10000px,不符合实际运用的需求。
经过测试,用js可以解决这个问题。
代码如下: 可以500%提高开发效率的前端UI框架!
- var height = document.getElementById("left").offsetHeight > document.getElementById("right").offsetHeight ?
- document.getElementById("left").offsetHeight : document.getElementById("right").offsetHeight;
- document.getElementById("left").style.height = document.getElementById("right").style.height = height + "px";
另外,在实际运用,可能还会存在由于左div或右div存在padding属性而导致上述取值变多或变少的问题。比如,最终赋值时发现left比right还高10px,这种情况只有手动在代码里面减10来解决了。这也是不太完美的地方。