当前位置: 代码迷 >> 综合 >> css转换(transform)
  详细解决方案

css转换(transform)

热度:75   发布时间:2023-11-29 14:15:50.0


    一、转换简介
        1、什么是转换
            改变元素在页面中的大小,位置,角度形状的一种方式

        2、转换分类
            ①、2D转换
                使元素在x轴和y轴上发生变化效果
            ②、3D转换
                在2D转换基础上,增加 z轴的变化效果
        3、转换属性
            属性:transform
            取值:
                ①、none
                    默认值,不进行任何转换
                ②、转换函数
                    表示一个或者多个转换函数,如果是多个函数的话,中间以空格分开
        4、转换原点
            属性:transform-origin
            默认情况下,原点是在整个元素的中心位置处
            取值:数值/百分比/关键字
            两个值:表示 x轴 和 y轴的位置
            三个值:表示 x轴 ,y轴 ,z轴的位置
    二、2D转换
        1、2D位移
            ①、属性 和 函数
                属性:transform
                函数:
                    translate(x) :元素在x轴上的位移距离,取值为正,向右移动,取值为负,向左移动
                    translate(x,y) :
                        x表示x轴位移距离
                        y表示y轴位移距离,取值为正,向下移动,取值为负,向上移动
                    translateX(x) :只改变元素在x轴上的位置
                    translateY(y) :只改变元素在y轴上的位置
                取值:
                    1、数值
                    2、百分比
        2、2D缩放
            ①、作用
                改变元素在页面中的大小
            ②、属性和函数
                属性:transform
                函数:
                    scale(value),如果只给一个值,那么x轴和y轴将等比缩放
                    scale(x,y):改变 x轴和y轴的缩放比例
                    scaleX(x):只改变x轴的缩放比例
                    scaleY(y):只改变y轴的缩放比例
                取值:
                    默认值 为1
                    缩小:0~1 之间的数值
                    放大:大于1的数值
        3、2D旋转
            ①、作用
                改变元素在页面中的角度
            ②、属性 和 函数
                属性:transform
                函数:rotate(ndeg)
                    n取值为正,则顺时针旋转
                    n取值为负,则逆时针旋转
            ③、注意
                1、转换时,坐标轴会一起进行转换
                2、转换原点可以影响转换效果
        4、2D倾斜
            ①、作用
                改变元素在页面上的形状
            ②、属性 和 函数
                属性:transform
                函数:
                    skew(xdeg) : x轴倾斜指定角度
                        实际上时改变 y轴的倾斜角度
                        取值为正:逆时针
                        取值为负:顺时针
                    skewX(xdeg) : 效果同上
                    skewY(ydeg) : y轴倾斜指定角度
                        实际上是改变 x轴的倾斜角度
                        取值为正:顺时针
                        取值为负:逆时针
    三、3D转换
        ①、3D转换
            增加 z轴 转换效果
        ②、属性
            属性:perspective
            作用:模拟 人眼睛到 3D投射元素的距离
            注意:该属性 需要加在 3D转换元素的父元素上
            兼容性:
                火狐:-moz-perspective:
                Chrome,Safari:-webkit-perspective
                Opera:-o-perspective
        ③、3D旋转
            允许元素在 x轴,y轴,z轴上进行旋转操作

            属性 和 函数
            属性:transform
            函数:
                rotateX(xdeg):以x轴为中心轴进行元素的旋转
                rotateY(ydeg)
                rotateZ(zdeg)
                rotate3D(x,y,z,ndeg)
                    x,y,z,如果取值为 0的话,说明该轴不参与旋转
                    x,y,z,如果取值为 1的话,说明该轴是参与旋转的

                    rotate3d(0,0,1,45deg)-- rotatez(45deg)

                    rotate3d(1,1,0,45deg)
   四、3D位移
        1、作用
            改变元素在z轴上的位置
        2、属性 和 函数
            属性:transform
            函数:
                translateZ();
                translate3D(x,y,z)
        3、属性 : transform-style
            作用:规范当前元素的子元素如何去排列3D位置
            取值:
                1、flat
                    默认值,不保留子元素的3D位置
                2、preserve-3d
                    保留子元素3d