【发布时间】:2012-05-24 12:47:48
【问题描述】:
在我的页面中间,我有一个 div 元素,其中包含一些内容(其他 div、图像等)。
<div>
before
</div>
<div id="content-to-scale">
<div>something inside</div>
<div>another something</div>
</div>
<div>
after
</div>
我想缩放该元素(内容到缩放)及其所有子元素。似乎是 CSS3 转换的缩放操作的工作。但是,问题在于这只是对该元素层次结构的可视化的转换,它不会改变页面上元素的空间(或位置)量。换句话说,将该元素缩放得更大会导致它与“之前”和“之后”文本重叠。
是否有一种简单/可靠的方法不仅可以缩放视觉表示,还可以缩放占用的空间量?
没有 Javascript 的纯 CSS 加分。对于使用其他转换功能(如旋转和倾斜)执行正确的事情的解决方案,更重要的是。这不必使用 CSS3 转换,但它确实需要在所有支持 HTML5 的最新浏览器中得到支持。
【问题讨论】:
-
CSS 转换的一些参考资料:a demo of rotate, skew, and scale。
transform和transform-origin属性上的 Mozilla 开发者网络。 -
所以让我直截了当地说:您想要转换子元素,并且在这样做的同时,您希望 CSS 改变父元素的高度、宽度。正确的?如果是这样,那么就没有 child->to->parent,即 CSS 中的向后/向上分层继承。
-
@AnubhavSaini,我没有在我的问题中排除 Javascript。我的目标是提供一个简单可靠的解决方案,该解决方案适用于所有最新的支持 HTML5 的浏览器(无论机制如何)。纯 CSS 是理想的,但不是必需的。
标签: html css scale css-transforms