
为什么考虑使用 translate 而非定位属性更改元素位置
在网页布局中,我们通常使用元素的定位属性(如 left、right、top、bottom)来控制元素在文档流中的位置。然而,在某些情况下,我们可能考虑使用 translate 转换来改变元素位置。
网页中拖动 DIV 是很常见的操作,今天就分享给大家一个 jQuery 多列网格拖动布局插件,和其它的插件不太一样的地方在于你处理拖放的元素支持不同大小,并且支持多列的网格布局,它们会自动的根据位置自己排序和调整。非常适合你开发具有创意的应用。这个插件可以帮助你将任何的 HTML 元素转换为网格组件
使用 translate 的优势:
- 不会触发重排或重绘:与更改元素定位属性(如 left、right)不同,translate 仅触发复合,这是一种比重排或重绘更轻量级的操作,不会对页面布局造成重大影响。
- 更平滑的动画:使用 translate 来更改元素位置可以实现更加平滑的动画,因为复合过程比重排或重绘更加高效。
- 脱离文档流时,避免卡顿:使用定位属性(如 left、right),即使元素脱离文档流(例如使用 absolute 定位),也可能导致卡顿。而使用 translate 不会出现这种情况。









