通过CSS3转换,能够对元素进行移动、缩放、转动、拉长或拉伸。它如何工作?转换是使元素改变形状、尺寸和位置的一种效果。CSS3转换包括2D转换和3D转换,本小结我们来了解2D变换的转换方法。

转换属性包含transform和transform-origin,它们的介绍如表1:

表1  转换属性

其中,transform有五种方法,它们的方法介绍如表2:

表2  transform方法

1  translate()方法

通过translate() 位移函数,元素从其当前位置移动,根据给定的left(x坐标) 和top(y坐标) 位置参数。translate()方法可以拆分为translateX()和translateY()方法,分别对元素的left和top位置设置参数。下面通过一个实例来解释这个方法,我们为img元素的left设置为0,top设置为0,当鼠标移入浏览器后,让它相对与当前位置向下移动50px,向右移动100px,再给它设定一个过渡效果,以便读者可以更好的体会到translate()方法实现的效果,代码如下:

该代码的解释为,img图像的left为100px,在浏览器里的执行初始效果如图1所示:

图1  translate()方法

当鼠标移入到浏览器后,我们可以发现图片的位置发生了改变,相对于之前的位置向下移动了50px,向右移动了100px,在浏览器里的执行效果如图2所示:

图2  translate()方法

2  rotate() 方法

通过rotate() 方法,元素顺时针旋转给定的角度。允许负值,元素将逆时针旋转。默认旋转基点为元素中心。

同样,我们通过一个小案例来解释这个方法。一个html文档里包含一个img元素,当鼠标移入该文档时,让图片旋转180deg。代码如下:

该代码的解释为,img图像初始状态没有旋转过,当鼠标移入body时,图片经过2s顺时针旋转180deg,默认的旋转基点为图片中心。在浏览器里的执行初始效果如图3:

图3  rotate旋转

当鼠标移入到浏览器后,我们可以发现图片变成了倒立的,也就是旋转了180deg,在浏览器里的执行效果如图4:

图4  rotate旋转

另外,我们还可以为该图片设置旋转基点,transform-origin属性允许我们改变被转换元素的位置,2D转换元素能够改变元素x轴和y轴。该属性的语法为:

transform-origin: x-axis y-axis z-axis;

该属性默认值为“50% 50% 0”。针对2D转换,我们可以先忽略z-axis,它是针对3D转换需要设定的值,我们会在下一小节提到。该属性的取值及描述如表3:

表3 转换属性

通过使用transform-origin来设置转换元素的位置为左上角。将上述案例的CSS代码替换如下:

当鼠标移入到body后,我们可以发现图片绕着左边界的中心点旋转了180deg,在浏览器里的执行效果如图5所示:

图5 设置转换元素的位置

IT兄弟连 HTML5教程 CSS3属性特效 2D变换1的更多相关文章

  1. IT兄弟连 HTML5教程 CSS3属性特效 2D变换2

    3  scale() 方法 通过scale() 方法,元素的尺寸会增加或减少,根据给定的宽度(X轴)和高度(Y轴)参数.缩放scale()函数让元素根据中心原点对对象进行缩放.默认值是1,因此0.01 ...

  2. IT兄弟连 HTML5教程 CSS3属性特效 3D变换1

    3D变换较2D变换多了一下的转换属性,3D转换属性及描述如表1: 表1  3D转换属性 3D的转换方法如表2: 表2  3D转换方法     1  transform-style transform- ...

  3. IT兄弟连 HTML5教程 CSS3属性特效 3D变换3

    5  3D旋转 在三维变形中,我们可以让元素在任何轴旋转.为此,CSS3新增了三个旋转函数:rotateX().rotateY()和rotateZ().使用rotateX()函数允许一个元素围绕X轴旋 ...

  4. IT兄弟连 HTML5教程 CSS3属性特效 3D变换2

    3  perspective-origin景深基点 perspective-origin景深基点属性时3D变形中另一个重要属性,主要用来决定perspective属性的源点角度.它实际上设置了X轴和Y ...

  5. IT兄弟连 HTML5教程 CSS3属性特效 小结及习题

    本章小结 CSS3新增了许多属性,CSS3样式新增了一种颜色模式rgba用来制作透明色,比CSS的颜色模式多了一个透明度的设置.文字的CSS3特效有文字阴影.文字描边.文字排版和文字省略等.另外,CS ...

  6. IT兄弟连 HTML5教程 CSS3属性特效 文字描边

    用CSS3实现的文字描边效果,一个CSS3文字特效实例,字体可以自己随意改,字体颜色也可以自己改.IE9以下浏览器无效果,所以提醒大家测试时候要使用Google Chrome.-webkit-text ...

  7. IT兄弟连 HTML5教程 CSS3属性特效 动画-animation

    CSS3属性中有关于制作动画的三个属性:Transform,Transition,Animation.前面已经介绍过Transform和Transition了,这里我们来学习Animation动画.通 ...

  8. IT兄弟连 HTML5教程 CSS3属性特效 transition过渡

    CSS3的transition允许css的属性值在一定的时间区间内平滑地过渡.这种效果可以在鼠标单击.获得焦点.被点击或对元素任何改变中触发,并圆滑地以动画效果改变CSS的属性值. transitio ...

  9. IT兄弟连 HTML5教程 CSS3属性特效 遮罩

    CSS遮罩提供一种基于像素级别的,可以控制元素透明度的能力,类似于png24位或png32位中的alpha透明通道的效果.遮罩有三个属性可以设置,分别是mask-image.mask-position ...

随机推荐

  1. VMware中linux虚拟机的安装

    打开安装的VMware 15,点击新建虚拟机 2.选择典型即可,点击下一步 3.选择“稍后安装操作系统”,点击下一步 4.选择想安的版本,点击下一步 5.设置虚拟机名称及安装位置(路径必须全英文!) ...

  2. 安装部署MySQL主从复制

    Environment:{ CentOS 7 两台  安装MySQL(mariadb  mariadb-server) } !!!关闭防火墙SELinux 1.查看版本信息 2.启动mysql服务,查 ...

  3. 机器学习笔记(十)---- KNN(K Nearst Neighbor)

    KNN是一种常见的监督学习算法,工作机制很好理解:给定测试样本,基于某种距离度量找出训练集中与其最靠近的k个训练样本,然后基于这k个"邻居"的信息来进行预测.总结一句话就是&quo ...

  4. 小白探究UE4网络系列(一)、UE4网络基础类分析

    转载请标明出处:http://www.cnblogs.com/zblade/ 一.概要 捣鼓UE4也有两个多月了,从这儿开始,逐步探究UE4中经典的值复制,RPC两种同步方式.想要弄到其复制和调用的原 ...

  5. Swoole高效跟传统的web开发有什么区别?

    一.swoole的运行模式 Swoole高效跟传统的web开发有什么区别,除了传统的LAMP/LNMP同步开发模式,swoole的异步开发模式是怎么样的. 1.1.传统web开发模式 PHP web开 ...

  6. react-native Android release打包失败

    npm run build报错(android) react-native 0.5x在安卓环境 gradle 3.x版本下编译release版本的时候提示编译失败,但是debug模式下是没有问题的. ...

  7. git 使用详解(3)—— 最基本命令 + .gitignore 文件

    Git 基础 本章将介绍几个最基本的,也是最常用的 Git 命令,以后绝大多数时间里用到的也就是这几个命令.读完本章,你就能初始化一个新的代码仓库,做一些适当配置:开始或停止跟踪某些文件:暂存或提交某 ...

  8. variable fonts - 更小更灵活的字体

    原文链接 variable fonts(下文中vf为缩写)是数字时代制作的字体技术,用更小的文件大小在web上提供更丰富的排版,但是一项新的技术往往伴随着新的挑战和复杂未知的情况.不过,我们要拥抱技术 ...

  9. GlusterFS缺陷

    glusterfs缺陷 转自:http://www.liuwq.com/2017/04/20/glusterfs%E8%AF%A6%E8%A7%A3/ glusterfs 原理.优势.使用范围等 Gl ...

  10. 【数据结构06】二叉平衡树(AVL树)

    目录 一.平衡二叉树定义 二.这货还是不是平衡二叉树? 三.平衡因子 四.如何保持平衡二叉树平衡? 五.平衡二叉树插入节点的四种情况 六.平衡二叉树操作的代码实现 七.AVL树总结 @ 一.平衡二叉树 ...