问题:scale 内容后如何相应缩小外层高度?
在 html 中,可以使用 transform: scale() 来缩小元素。但是,当对内容元素使用 scale 时,外层元素的高度可能不会相应缩小。
例如,如下所示代码中:
<div> <div style="height: 500px;transform-origin: left top;transform: scale(.8);" > 12313 </div> </div>
如果去掉 transform: scale(.8);,外层 div 的高度为 500px。但是,添加 scale 后,内容高度明显小于 500px,但外层 div 的高度仍然是 500px。
在这种情况下,如何让外层 div 的高度跟随内容高度缩小呢?
答案:
遗憾的是,除了使用 javascript 计算并动态调整外层 div 的高度之外,目前似乎没有更好的方法。这是因为 transform 不改变布局,其在文档中的占位保持不变。而这也是它在动画中更高效的原因。