最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

关于CSS3元素2D平面变换属性transform的实现方法

来源:懂视网 责编:小采 时间:2020-11-27 18:51:34
文档

关于CSS3元素2D平面变换属性transform的实现方法

关于CSS3元素2D平面变换属性transform的实现方法:CSS3的形状变换允许我们对元素拉伸、缩放等等 这篇我主要谈下一2D平面变换 属性transform可以进行变换 transform就是变形的意思 并且它主要通过函数来使用,有以下函数translate() 平移变换ratate() 旋转变换scale() 缩放变换skew() 倾斜变换
推荐度:
导读关于CSS3元素2D平面变换属性transform的实现方法:CSS3的形状变换允许我们对元素拉伸、缩放等等 这篇我主要谈下一2D平面变换 属性transform可以进行变换 transform就是变形的意思 并且它主要通过函数来使用,有以下函数translate() 平移变换ratate() 旋转变换scale() 缩放变换skew() 倾斜变换

CSS3的形状变换允许我们对元素拉伸、缩放等等

这篇我主要谈下一2D平面变换
属性transform可以进行变换
transform就是变形的意思
并且它主要通过函数来使用,有以下函数

  • translate() 平移变换

  • ratate() 旋转变换

  • scale() 缩放变换

  • skew() 倾斜变换

  • matrix() 矩阵变换

  • transform-origin则时定义变换的中心

    平移变换translate

    translate()两个参数,第一个是x轴相对位移,第二个参数是y轴相对位移

    .demo { ......
     transform: translate(100px, 200px); <--
    }

    或者translate()可以拆成translateX()和translateY()
    (小写形式translatex/y也可以)

    .demo { ......
     transform: translateX(100px) translateY(200px); /*改*/}

    两者是等价的,不过很麻烦
    结果是元素向右平移了100px,向下平移了200px

    旋转变换rotate

    rotate()一个参数,表示旋转角度的‘xxdeg’,
    正数顺时针旋转,允许负值

    .demo { ......
     transform: rotate(30deg);}

    结果是元素顺势针旋转了30°
    不过元素默认的旋转中心是元素中心
    修改变换中心可以用我们的transform-origin属性
    比如说我们想要让元素沿着左上顶点旋转

    .demo { ......
     transform: rotate(30deg); transform-origin: 0 0; /*增*/}

    transform-origin的三个参数是 x轴距离(x-axis),y轴距离(y-axis),z轴距离(z-axis)
    默认的形式就是transform-origin: 50% 50% 0;
    x-axis可选值除了长度和百分比,还有left、center、right
    y-axis可选值除了长度和百分比,还有top、center、bottom
    z-axis可选值只有长度值,在2D变换中我们暂时用不到它

    缩放变换scale

    缩放元素就是改变元素的尺寸
    两个参数,宽度与高度缩放的倍率(无单位)
    同样可以拆成scaleX()与scaleY()

    .demo { ......
     transform: scale(2,2);}

    这样就是把元素宽度扩大一倍,高度扩大二倍
    注意这是真正意义的缩放
    意思就是,如果你的元素中有文字会产生拉伸的效果
    等价形式如下

    .demo { ......
     transform: scaleX(2) scaleY(3); /*改*/}

    可以通过transform-origin修改变换中心

    倾斜变换skew

    skew就是倾斜扭曲的意思
    这个函数会让你的元素线性扭曲
    两个参数,x轴与y轴的扭曲角度,同样是xxdeg的形式

    .demo { ......
     transform: skew(10deg,20deg);}

    等价

    .demo { ......
     transform: skewX(10deg) skewY(20deg); /*改*/}

    同样可以通过transform-origin修改变换中心,不再赘述

    矩阵变换matrix

    听起来超级NB,实际上呢
    真的是超级NB
    矩阵变换用的比较少,它是上面所有变换的基础
    我懂得也不是很深
    作为一个数学系的学生,确实惭愧T^T
    matrix变换有6个参数,可以控制元素的旋转、平移、倾斜和缩放
    比如下面的代码把元素旋转了30°,x、y轴各平移20px

    .demo { ......
     transform: matrix(0.866,0.5,-0.5,0.866,20,20);}

    如果对数学有兴趣的同学,我推荐张鑫旭大神的文章传送门
    没准以后我心血来潮也写一篇矩阵的文章……


    今天要讲的东西比较简单就不放图了
    3D变换相关属性 –>传送门

    声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文档

    关于CSS3元素2D平面变换属性transform的实现方法

    关于CSS3元素2D平面变换属性transform的实现方法:CSS3的形状变换允许我们对元素拉伸、缩放等等 这篇我主要谈下一2D平面变换 属性transform可以进行变换 transform就是变形的意思 并且它主要通过函数来使用,有以下函数translate() 平移变换ratate() 旋转变换scale() 缩放变换skew() 倾斜变换
    推荐度:
    标签: 转换 元素 变换
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top