3  scale() 方法

通过scale() 方法,元素的尺寸会增加或减少,根据给定的宽度(X轴)和高度(Y轴)参数。缩放scale()函数让元素根据中心原点对对象进行缩放。默认值是1,因此0.01到0.99之间的任何值,使一个元素缩小;而任何大于或等于1.01的值,让元素显得更大。缩放scale()和translate()函数的语法非常相似,它可以接受一个值,也可以同时接受两个值,如果只有一个值时,其第二个值默认与第一个值相等。例如:scale(1,1)元素不会有任何变化,而scale(2,2)让元素沿X轴和Y轴放大两倍。其语法如下:

scale(sx)

或者:

scale(sx,sy)

该函数属性的取值及描述如表4:

表4  scale()旋转函数属性值及描述

同样,我们通过一个小案例来解释scale方法。这里有两张图片并排显示,其中我们为第二张图片对一个图片使用scale放大1.2倍,可以使用scale(1.2),也可以使用scale(1.2,1.2),表示X轴和Y轴都放大1.2倍。代码如下:

这里,我们展示了两张图片,第一张以原图显示,第二张被放大为原来的1.2倍。在浏览器里的执行效果如图6:

图6  scale缩放函数

如果将值设置为“0”时,元素将消失。当我们仅给scale()函数只显式设置一个值时,会使对象成正比例放大或缩小。

在scale()函数中,除了可以取正值之外,还可以去负值。只不过取负值时,会让元素进行翻转,然后再进行缩放。scale()函数在对元素进行缩放时,都是以元素的中心为基点,但可以通过transform-origin来改变元素的基点。

4  skew() 方法

通过skew() 方法,元素转动给定的角度,根据给定的水平线(X轴)和垂直线(Y轴)参数。skew()倾斜函数能够让元素倾斜显示。它可以将一个对象以其中心位置围绕着X轴和Y轴按照一定的角度倾斜。这与rotate()函数的旋转不同,rotate()函数只是旋转,而不会改变元素的形状。skew()函数不会旋转,而只会改变元素的形状。其语法如下:

 skew(ax)

或者:

skew(ax,ay)

该函数属性的取值及描述如表5:

表5  skew()函数属性值及描述

下面我们使用一个简单的例子来说明skew()函数。代码如下:

这里,我们展示了两张图片,第一张以原图显示,第二张被skew()函数处理后,横向倾斜度30deg,垂直倾斜10deg。在浏览器里的执行效果如图7所示:

图7  skew倾斜函数

倾斜skew()函数和CSS3中变形中的translate()、scale()函数一样,除了可以使用skew(ax,ay)函数让元素只在水平或者垂直方向倾斜。

skewX():相当于skew(ax,0)和skew(ax)。按给定的角度沿X轴指定一个倾斜变形。skewX()使元素以其中心为基点,并在水平方向(X轴)进行倾斜变形。

skewY():相当于skew(0,ay)。按给定的角度沿Y轴指定一个倾斜变形。skewY()使元素以其中心为基点,并在垂直方向(Y轴)进行倾斜变形。

在默认情况下,skew()函数都是以元素的原中心点对元素进行倾斜变形。但是我们同样可以根据transform-origin属性,重新设置元素基点对元素进行倾斜变形。

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

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

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

  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. Linux之find命令

    1.find命令的作用 主要用于操作系统文件.目录的查找. 2.find命令常用参数 -name #按文件名查找 -type #按文件类型查找:b/p/c/p/l/f -size #但文件大小查找,G ...

  2. 使用 Flask 和 Vue.js 来构建全栈单页应用

    在这个教程中,我将向你展示如何将 Vue 的单页面应用和 Flask 后端连接起来. 简单的来说,如果想在 Flask 中使用 Vue 框架是没有什么问题的. 但在实际中存在一个明显的问题就是 Fla ...

  3. vue实例化过程

    我们在用vue进行开发项目时,是否存在疑惑,new Vue(xxx)的过程中,究竟发生了什么?定义的数据,是如何绑定到视图上的?本篇主要介绍在实例化vue时,主要做了哪些事,文章比较长,主要篇幅内容为 ...

  4. Python-TCP客户端程序开发

    TCP客户端,需要与服务端建立连接,连接建立成功后才可以进行数据的传输. # 1.导入模块 import socket if __name__ == '__main__': # 2.创建套接字对象 t ...

  5. zabbix分布式监控服务 安装与配置

    zabbix安装与配置   一.什么是zabbix及优缺点(对比cacti和nagios) Zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存 ...

  6. Java修炼——对象数组存储表格数据

    数组存基本数据类型,也可以存引用数据类型 对象数组:使用数组存储对象(自定义对象) 先定义Person的三个私有变量,给他取值赋值方法,重写toString方法. package com.bjsxt. ...

  7. HDU1529-Casher Emploryment(最最...最经典的差分约束 差分约束-最长路+将环变线)

    A supermarket in Tehran is open 24 hours a day every day and needs a number of cashiers to fit its n ...

  8. Pyhton表白代码——浪漫圣诞节

    圣诞节即将到了,所以这回通过turtle模块来编写一个表白的小程序 开发时间:2019-12-15 开发工具:Sublime 开发模块:turtle 这里用到了turtle库的相关知识,如果不熟悉可以 ...

  9. Java中跳出多重嵌套循环的方法

    一.使用标号 1.多重嵌套循环前定义一个标号 2.里层循环的代码中使用带有标号 break 的语句 public static void main(String[] args) { ok: for(i ...

  10. unity3d 柏林噪声 PerlinNoise 规律 算法

    测试 每个小数值取100次 print(0.1); LaTest3(0.1f, 0.1f); print("Max:" + La.Max() + "|Min:" ...