变形 transform(2D)

115 阅读1分钟

变形 transform(2D)

变形可以改变盒子在平面内的形态(位移、旋转、缩放等等)

1.位移translate

translate可以让盒子沿着x轴或者y轴移动 语法

transform: translateX(x);
transform: translateY(y);
他与margin有啥区别:

1.margin移动会影响其他的盒子,把其他的盒子挤走.

2.位移translate移动盒子不会影响其他盒子,不脱标.

注意:移动的时候可以写百分比,如果使用的百分比,移动的是盒子自身宽带

1-1应用- 盒子水平和垂直

{
      position: absolute;
      top: 50%;
      left: 50%;
      width: 100px;
      height: 100px;
      background-color: skyblue;
      transform: translate(-50%, -50%);
    }

2.旋转rotate

旋转可以让盒子旋转角度。

语法:

    translate:rotate(45deg)

如果是正度数,则是顺时针旋转

如果是负度数,则是逆时针旋转

2-1设置中心点 transform-origin

/* 设置旋转的中心点位置 */

transform-origin:right bottom;

2-2多形态变形小技巧

1.如果有移动属性,一定要先写移动,不然会影响代码执行

 transform: translate(-50%, -50%) rotate(360deg);

2.注意,多个值之前用 空格隔开。

3.缩放scale

语法:

transform: scale(1.2);