2026-10-29 14:39:33
CSS的transform属性通过rotate()和scale()函数可分别实现元素的旋转与缩放,二者可组合使用,并可通过transform-origin调整变换基准点,配合transition可实现高性能动画。
一、元素旋转(rotate())rotate(angle):angle为正值时顺时针旋转,负值时逆时针旋转。
示例:.box { transform: rotate(45deg); } /* 顺时针旋转45度 */.box { transform: rotate(-30deg); } /* 逆时针旋转30度 */
scale(value):X和Y轴同时缩放,value为缩放倍数(1为原始大小,>1放大,<1缩小)。
scale(x, y):分别指定X轴和Y轴的缩放比例。
示例:.box { transform: scale(1.5); } /* X/Y轴同时放大1.5倍 */.box { transform: scale(2, 0.5); } /* X轴放大2倍,Y轴缩小至0.5倍 */
若需先旋转再缩放,需调整函数顺序:.box { transform: scale(1.2) rotate(30deg); /* 实际执行顺序:先旋转30度,再缩放1.2倍 */}
关键字:top、right、bottom、left、center(可组合使用,如top left)。
百分比/长度值:transform-origin: 20% 30%;(X轴20%,Y轴30%)。
示例:.box { transition: transform 0.3s ease;}.box:hover { transform: rotate(45deg) scale(1.2); /* 悬停时旋转并放大 */}