乐趣区

css3中的变形transform

transform 字面上的意思就是 使改变外观、改变形态

在 css3 中 transform 主要包括以下几种

1. 旋转 rotate

2. 倾斜 skew

3. 缩放 scale

4. 移动 translate

下面我们就一起来看看 transform 的 rotate、skew、scale、translate 具体如何实现。

语法

transform:none

transform:rotate | skew | scale | translate

none:表示不进行变换

表示一个或多个变换函数,空格分开,意思就是我们同时对一个元素进行 transform 的多种属性操作,使用多个属性时需要有空格隔开

一、旋转 rotate

transform:rotate();
旋转;其中“deg”是“度”的意思,如“10deg”表示“10 度”

rotate() 方法,
通过指定的角度参数对元素指定一个 2D rotation(2D 旋转)

在一个给定度数顺时针旋转的元素。负值是允许的,这样是元素逆时针旋转。

下面我就做一个“福字”例子

html


<div class="box">

    <div class="box1">

        福

    </div>

</div>    

css


<style>
    html,body{
        height: 100%;
        margin: 0;
        padding: 0;
        position: relative;
    }
    .box{
        width: 100px;
        height: 100px;
        background: red;
        position: absolute;
        left:calc(50% - 50px);
        top:calc(50% - 50px);
                
        transform: rotate(45deg);
    }
    .box .box1{
        font-size: 50px;
        font-weight: bold;
        text-align: center;
        line-height: 100px;
                
        transform: rotate(135deg);
    }
</style>

例:

二、倾斜 skew

倾斜具有三种情况

skew(x,y) 使元素在水平和垂直方向同时倾斜(X 轴和 Y 轴同时按一定的角度值进行倾斜变形);

skewX(x) 仅使元素在水平方向倾斜变形(X 轴倾斜变形);

skewY(y) 仅使元素在垂直方向倾斜变形(Y 轴倾斜变形)

三、缩放 scale

缩放 scale 和倾斜 skew 是极其相似,也具有三种情况

scale(x,y) 使元素水平方向和垂直方向同时缩放(也就是 X 轴和 Y 轴同时缩放);

scaleX(x) 元素仅水平方向缩放(X 轴缩放);

scaleY(y) 元素仅垂直方向缩放(Y 轴缩放)

但它们具有相同的缩放中心点和基数,其中心点就是元素的中心位置,缩放基数为 1,如果其值大于 1 元素就放大,反之其值小于 1,元素缩小。

四、移动 translate

移动 translate 和 skew、scale 一样同样具有三种情况

translate(x,y) 水平方向和垂直方向同时移动(也就是 X 轴和 Y 轴同时移动);

translateX(x) 仅水平方向移动(X 轴移动);

translateY(Y) 仅垂直方向移动(Y 轴移动)

以下列出了所有的转换属性

2D 转换方法

如果文中有不妥或者错误的地方还望高手的您指出,以免误人子弟。

如果您有更好的建议,不如留言一起讨论,共同进步!再次感谢您耐心的读完本篇文章。

vx:bsl521921

退出移动版