本文共 1406 字,大约阅读时间需要 4 分钟。
2D转换是改变标签在二维平面上的位置和形状。常见的2D转换方法包括移动、旋转和缩放。
移动是2D转换中最基本的操作,主要用于水平和垂直方向上的位移。
transform: translate(x, y)transform: translateX(n)transform: translateY(n)关键点:
translate的最大优点是不会影响其他元素的位置。translate中的100%单位,是相对于本身的宽度和高度来进行计算的。代码示例:
div { background-color: lightseagreen; width: 200px; height: 100px; transform: translate(100px, 100px); /* 水平垂直移动100px */ transform: translateX(100px); /* 水平移动100px */ transform: translateY(100px); /* 垂直移动100px */} 旋转是让元素在二维平面内顺时针或逆时针旋转。
语法:
transform: rotate(角度),单位是 deg。 关键点:
代码示例:
img:hover { transform: rotate(360deg); /* 顺时针旋转360度,相当于没有旋转 */} 设置旋转中心点(transform-origin):
transform-origin 用于设置旋转的中心点,默认是元素的中心点(50% 50%)。
语法:
transform-origin: x y; top、bottom、left、right、center)。代码示例:
div { transform-origin: 100px 100px; /* 自定义旋转中心 */} 缩放用于控制元素的放大与缩小。
语法:
transform: scale(x, y) 关键点:
scale(1,1) 表示不改变大小。scale(2,2) 表示放大两倍。scale(0.5,0.5) 表示缩小两倍。scale 的最大优势是可以设置转换中心点缩放,默认以中心点缩放。代码示例:
div:hover { transform: scale(0.5, 0.5); /* 缩小50% */} transform: translate() rotate() scale()。代码示例:
div:hover { transform: translate(200px, 0) rotate(360deg) scale(1.2); /* 综合使用 */} 转载地址:http://atux.baihongyu.com/