剛開始接觸CSS3的2D變換屬性,就被這個skew()搞的一頭霧水,不知道具體是怎么變化的!
研究了一會才發現,CSS3的斜切坐標系和數學中的坐標系完全不一樣(設置斜切原點為左上角)
<style> div{ width: 200px; height: 200px; transition:all 2s; margin: 150px auto; } .div1{ background-color: #f00; } .div2{ background-color: #0f0; } </style> <body> <div class="div1"></div> <div class="div2"></div> </body>
下面我們設置鼠標經過時的skew(0,30deg)屬性
.div1:hover {
transform:skew(0,30deg);
transform-origin: left top;
}
移入前
移入后
通過兩幅圖可以看出,skew(0,30deg);是按照水平方向Y軸,順時針旋轉
下面我們設置鼠標經過時的skew(30deg,0)屬性
.div2:hover {
transform:skew(30deg,0);
transform-origin: left top;
}
移入前
移入后
通過兩幅圖可以看出,skew(30deg,0);是按照垂直方向X軸,逆時針旋轉