CSS3 转换

通过 CSS3 转换,我们能够对元素进行移动、缩放、转动、拉长或拉伸。

2D 转换

在本次,您将学到如下 2D 转换方法:

  • 1. translate()
  • 2. rotate()
  • 3. scale()
  • 4. skew()
  • 5. matrix() 

translate() 方法

通过 translate() 方法,元素从其当前位置移动,根据给定的 left(x 坐标) 和top(y 坐标) 位置参数:

示例:

div
{
transform: translate(50px,100px);
-ms-transform: translate(50px,100px); /* IE 9 */
-webkit-transform: translate(50px,100px); /* Safari and Chrome */
-o-transform: translate(50px,100px); /* Opera */
-moz-transform: translate(50px,100px); /* Firefox */
}

  值 translate(50px,100px) 把元素从左侧移动 50 像素,从顶端移动 100 像素。

rotate() 方法

通过 rotate() 方法,元素顺时针旋转给定的角度。允许负值,元素将逆时针旋转。

实例

div
{
transform: rotate(30deg);
-ms-transform: rotate(30deg); /* IE 9 */
-webkit-transform: rotate(30deg); /* Safari and Chrome */
-o-transform: rotate(30deg); /* Opera */
-moz-transform: rotate(30deg); /* Firefox */
}

  值 rotate(30deg) 把元素顺时针旋转 30 度。

scale() 方法

通过 scale() 方法,元素的尺寸会增加或减少,根据给定的宽度(X 轴)和高度(Y 轴)参数:

示例代码:

div
{
  transform: scale(2,4);
  -ms-transform: scale(2,4); /* IE 9 */
  -webkit-transform: scale(2,4); /* Safari 和 Chrome */
  -o-transform: scale(2,4); /* Opera */
  -moz-transform: scale(2,4); /* Firefox */
}

  值 scale(2,4) 把宽度转换为原始尺寸的 2 倍,把高度转换为原始高度的 4 倍。

skew() 方法

通过 skew() 方法,元素翻转给定的角度,根据给定的水平线(X 轴)和垂直线(Y 轴)参数:

示例代码

div
{
transform: skew(30deg,20deg);
-ms-transform: skew(30deg,20deg); /* IE 9 */
-webkit-transform: skew(30deg,20deg);/* Safari and Chrome */
-o-transform: skew(30deg,20deg); /* Opera */
-moz-transform: skew(30deg,20deg); /* Firefox */
}

  值 skew(30deg,20deg) 围绕 X 轴把元素翻转 30 度,围绕 Y 轴翻转 20 度。

matrix() 方法

matrix() 方法把所有 2D 转换方法组合在一起。

matrix() 方法需要六个参数,包含数学函数,允许您:旋转、缩放、移动以及倾斜元素。

示例代码

如何使用 matrix 方法将 div 元素旋转 30 度:

div
{
transform:matrix(0.866,0.5,-0.5,0.866,0,0);
-ms-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* IE 9 */
-moz-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* Firefox */
-webkit-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* Safari and Chrome */
-o-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* Opera */
}

  

2D Transform 方法

函数 描述
matrix(n,n,n,n,n,n) 定义 2D 转换,使用六个值的矩阵。
translate(x,y) 定义 2D 转换,沿着 X 和 Y 轴移动元素。
translateX(n) 定义 2D 转换,沿着 X 轴移动元素。
translateY(n) 定义 2D 转换,沿着 Y 轴移动元素。
scale(x,y) 定义 2D 缩放转换,改变元素的宽度和高度。
scaleX(n) 定义 2D 缩放转换,改变元素的宽度。
scaleY(n) 定义 2D 缩放转换,改变元素的高度。
rotate(angle) 定义 2D 旋转,在参数中规定角度。
skew(x-angle,y-angle) 定义 2D 倾斜转换,沿着 X 和 Y 轴。
skewX(angle) 定义 2D 倾斜转换,沿着 X 轴。
skewY(angle) 定义 2D 倾斜转换,沿着 Y 轴。

最新文章

  1. 5-4 bash脚本编程之三 条件判断及算术运算
  2. CF Round #367 C题
  3. Codeforces Round #389 (Div. 2, Rated, Based on Technocup 2017 - Elimination Round 3) C
  4. 利用springframework+javax.mail发邮件(普通邮件、带附件邮件、HTML格式邮件)
  5. <转>RowState 介绍
  6. 解决Xshell和vim中文乱码(转载)
  7. Java:集合for高级循环遍历
  8. effective c++ 条款06 不想自动生成函数,就明确拒绝
  9. Springmvc加载静态文件和开启EL表达式的支持
  10. DHot.exe 热点新闻
  11. OVS vxlan 底层结构分析 - 每天5分钟玩转 OpenStack(148)
  12. js扩展父类方法
  13. Java 实现 Domino邮箱自动注册
  14. java获取windows下面的文件对象
  15. Android自动化框架介绍
  16. 适用于 Android 的 Visual Studio 模拟器
  17. MySQL如何查询多少行,多少列
  18. Using iSCSI On Ubuntu 10.04 (Initiator And Target)
  19. django 视图函数返回queryset对象或日期对象至浏览器ajax接收的写法
  20. tf 数据读取

热门文章

  1. [转] 计算几何模板Orz
  2. easyloader.js源代码分析
  3. Effective Java之避免创建不必要的对象
  4. SSH协议及其应用
  5. C# 反射创建对象,包括创建引用外部程序集类的实例
  6. jQuery插件 -- Form表单插件jquery.form.js
  7. 新浪微博客户端(8)-添加按钮到TabBar
  8. Oracle 11g客户端在Linux系统上的配置步骤详解
  9. [转] Android开发者必备的42个链接
  10. Ubuntu下编译SuiteSparse-4.4.1和METIS-4.0.3