经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » HTML/CSS » CSS3 » 查看文章
css3中transform属性实现的4种功能_css3_CSS
来源:jb51  时间:2021/8/5 19:39:24  对本文有异议

在CSS3中,可以利用transform功能实现文字或图像的旋转、缩放、倾斜、移动这4中类型的变形处理。

1、浏览器支持

到目前为止:Safari3.1以上、Chrome8以上、Firefox4以上、Opera10以上浏览器支持该属性。  

2、旋转

使用rotate方法,在参数中加入角度值,角度值后面跟表示角度单位的“deg”文字即可,旋转方向为顺时针方向。

  1. transformrotate45deg);

3、缩放

使用scale方法来实现文字或图像的缩放处理,在参数中指定缩放倍率。

  1. transformscale0.5);//缩小一半

(1)可以分别指定元素的水平方向的放大倍率与垂直方向的放大倍率

  1. transformscale0.52);//水平方向缩小一半,垂直方向放大一倍。

4、倾斜

使用skew方法实现文字或图像的倾斜处理,在参数中分别指定水平方向上的倾斜角度与垂直方向上的倾斜角度。

  1. transformskew30deg30deg);//水平方向上倾斜30度,垂直方向上倾斜30度。

(1)只使用一个参数,省略另一个参数

这种情况下视为只在水平方向上进行倾斜,垂直方向上不倾斜。

  1. transformskew30deg);

5、移动

使用translate方法来移动文字或图像,在参数中分别指定水平方向上的移动距离与垂直方向上的移动距离。

  1. transformtranslate50px50px);//水平方向上移动50px,垂直方向上移动50px

(1)只使用一个参数,省略另一个参数

这种情况下视为只在水平方向上移动,垂直方向上不移动。

  1. transformtranslate50px);

6、对一个元素使用多种变形的方法  

  1. transformtranslate150px200pxrotate45degscale1.5);

7、指定变形的基准点

在使用transform方法进行文字或图像变形的时候,是以元素的中心点为基准点进行变形的。

transform-origin属性

使用该属性,可以改变变形的基准点。

  1. transformrotate45deg);
  2. transform-originleftbottom//把基准点修改为元素的左下角

(1)指定属性值
基准点在元素水平方向上的位置:left、center、right
基准点在元素垂直方向上的位置:top、center、bottom

8、3D变形功能

(1)旋转

分别使用rotateX方法、rotateY方法、rotateZ方法使元素围绕X轴、Y轴、Z轴旋转,在参数中加入角度值,角度值后面跟表示角度单位的deg文字即可,旋转方向为顺时针旋转。

  1. transformrotateX45deg);
  2. transformrotateY45deg);
  3. transformrotateZ45deg);
  4. transformrotateX45degrotateY45degrotateZ45deg);
  5. transformscale0.5rotateY45degrotateZ45deg);

(2)缩放

分别使用scaleX方法、scaleY方法、scaleZ方法使元素按X轴、Y轴、Z轴进行缩放,在参数中指定缩放倍率。

  1. transformscaleX0.5);
  2. transformscaleY1);
  3. transformscaleZ2);
  4. transformscaleX0.5scaleY1);
  5. transformscale0.5rotateY45deg);

(3)倾斜

分别使用skewX方法、skewY方法使元素在X轴、Y轴上进行顺时针方向倾斜(无skewZ方法),在参数中指定倾斜的角度

  1. transformskewX45deg);
  2. transformskewY45deg);

(4)移动

分别使用translateX方法、translateY方法、translateZ方法、使元素在X轴、Y轴、Z轴方向上进行移动,在参数中加入移动距离。

  1. transformtranslateX50px);
  2. transformtranslateY50px);
  3. transformtranslateZ50px);

9、变形矩阵

每种变形方法的背后都存在着一个对应的矩阵。

(1)计算2D变形(3X3矩阵)

  1. \begin{bmatrix}a&c&e\\b&d&f\\0&0&1\end{bmatrix}

可以将这个2D变形矩阵书写为matrim(a,b,c,d,e,f),a~f均代表一个数字,用于决定怎样执行变形处理。

(2)平移的2D矩阵

  1. \begin{bmatrix}1&0&tx\\0&1&ty\\0&0&1\end{bmatrix}
  2. //效果一致:右移150px,下移150px
  3. transformmatrix10,0,1150150);
  4. transformtranslate150px150px);

(3)计算3D变形

3D缩放变形使用的4X4矩阵

  1. \begin{bmatrix}sx&0&0&0\\0&sy&0&0\\0&0&sz&0\\0&0&0&1\end{bmatrix}
  2. transform:matrix3d(sx,0,0,0,0,sy,0,0,0,0,sz,0,0,0,0,1);
  3. //效果一致:X轴方向上缩小五分之一,Y轴方向上缩小一半。
  4. transform:scale3d(0.8,0.5,1);
  5. transform:matrix3d(0.8,0,0,0,0,0.5,0,0,0,0,1,0,0,0,0,1);

(4)可通过矩阵执行多重变形处理

将需要的变形矩阵相乘得到一个新的变形矩阵可实现该处理。

到此这篇关于css3中transform属性实现的4种功能的文章就介绍到这了,更多相关css3中transform属性实现内容请搜索w3xue以前的文章或继续浏览下面的相关文章,希望大家以后多多支持w3xue!

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号