- skew
一个参数时,水平倾斜。两个参数水平垂直倾斜
transform-origin默认是中心
.button {
transform: skewX(-45deg);background: red
}
.button > div {
transform: skewX(45deg);
}
<div class="button">
<div>
click me
</div>
</div>
//内层click me不会倾斜
法二:
.button {
position: relative;
/* 其他的文字颜色、内外变局等样式*/
}
.button::before {
content: '';
position: absolute;
top: 0;right: 0;bottom: 0;left: 0;
z-index: -1;
background: #58a;
transform: skew(-45deg);
}
<div class="button">
<div>
click me
</div>
</div>
//让伪元素在水平和垂直方向上都被拉伸至宿主元素的尺寸
- scale
- translate
用translate来改变位移而不用left等属性来实现是因为:translate只会引起重绘,而left会引起重排
- translate3d
translate3D传说因为走的是3D,所以能得到更完整的GPU加速的支持,在GPU中还有贴图缓存等手段帮你优化性能,所以更快