IT兄弟连 HTML5教程 CSS3属性特效 3D变换2
3 perspective-origin景深基点
perspective-origin景深基点属性时3D变形中另一个重要属性,主要用来决定perspective属性的源点角度。它实际上设置了X轴和Y轴位置,在该位置观看者好像在观看该元素的子元素。
perspective-origin属性的使用语法如下:
perspective-origin: tx ty;
该属性的默认值为“50% 50%”,可以设置一个值,也可以设置两个长度值。其取值及描述如表3
表3 perspective-origin属性值及描述
同perspective一样,perspective-origin属性必须定义在父元素上。通常perspective-origin属性本身不做任何事情,它必须被定义在设置了perspective属性的元素上。换句话说,perspective-origin属性需要与perspective属性结合使用,以便将视点移至元素的中心以外位置。
同样,我们通过一个小案例来加深一下对perspective-origin的印象。代码如下:
在这里我们也设置了两个div,每个div里包含一张图片。每个div都建立3D空间,设置600px的景深。不同的是,我们改变了第二个div的景深基点为“left top”,第一张使用默认的景深基点为“50% 50%”。在浏览器中查看,运行效果如图2所示:
图2 perspective-origin景深基点
从上图,我们可以看出两张图的差别。设置景深基点相当于换了位置查看这个3D变化。
4 3D位移
在CSS3中3D位移主要包括两种函数translateZ()和translate3d()。translate3d()函数使一个元素在三维空间移动。这种变形的特点是,使用三维向量的坐标定义元素在每个方向移动了多少。其基本语法如下:
translate3d(tx,ty,tz)
其属性取值及说明如表4:
表4 translate3d(tx,ty,tz)属性值取值及说明
一起来看一个简单的实例,加深对translate3d()的理解,代码如下:
这里我们为第二张图片使用translate3d()方法,让它相对于之前的位置偏移,横向偏移10px,纵向偏移10px,Z轴位移偏量为-100px。在浏览器中查看,运行效果如图3所示:
图3 translate3d() 3D位移
从上图,我们可以看出两张图的差别。第二张图位移发生了改变,向右偏移了10px,向下偏移了10px,向后偏移了100px。
在CSS3中3D位移除了translate3d()函数之外还有translateZ()函数。translateZ()函数的功能是让元素在3D空间沿Z轴进行位移,其基本使用语法如下:
translateZ(t)
t指的是Z轴的向量位移长度。
使用translateZ()函数可以让元素在Z轴进行偏移,当其为负值时,元素在Z轴越移越远,导致元素变得较小。反之,当其值为正值是,元素在Z轴越来越近,导致元素变得较大。将上例CSS代码的translate3d()方法替换成translateZ()方法,代码如下:
这里我们为第二张图片使用translateZ()方法,Z轴位移偏量为-100px。在浏览器中查看,运行效果如图4所示:
图4 translate3d() 3D位移
translateZ()函数仅让元素在Z轴进行位移,在实际使用中等同于translate3d(0,0,tz)。
IT兄弟连 HTML5教程 CSS3属性特效 3D变换2的更多相关文章
- IT兄弟连 HTML5教程 CSS3属性特效 3D变换1
3D变换较2D变换多了一下的转换属性,3D转换属性及描述如表1: 表1 3D转换属性 3D的转换方法如表2: 表2 3D转换方法 1 transform-style transform- ...
- IT兄弟连 HTML5教程 CSS3属性特效 3D变换3
5 3D旋转 在三维变形中,我们可以让元素在任何轴旋转.为此,CSS3新增了三个旋转函数:rotateX().rotateY()和rotateZ().使用rotateX()函数允许一个元素围绕X轴旋 ...
- IT兄弟连 HTML5教程 CSS3属性特效 2D变换1
通过CSS3转换,能够对元素进行移动.缩放.转动.拉长或拉伸.它如何工作?转换是使元素改变形状.尺寸和位置的一种效果.CSS3转换包括2D转换和3D转换,本小结我们来了解2D变换的转换方法. 转换属性 ...
- IT兄弟连 HTML5教程 CSS3属性特效 2D变换2
3 scale() 方法 通过scale() 方法,元素的尺寸会增加或减少,根据给定的宽度(X轴)和高度(Y轴)参数.缩放scale()函数让元素根据中心原点对对象进行缩放.默认值是1,因此0.01 ...
- IT兄弟连 HTML5教程 CSS3属性特效 小结及习题
本章小结 CSS3新增了许多属性,CSS3样式新增了一种颜色模式rgba用来制作透明色,比CSS的颜色模式多了一个透明度的设置.文字的CSS3特效有文字阴影.文字描边.文字排版和文字省略等.另外,CS ...
- IT兄弟连 HTML5教程 CSS3属性特效 文字描边
用CSS3实现的文字描边效果,一个CSS3文字特效实例,字体可以自己随意改,字体颜色也可以自己改.IE9以下浏览器无效果,所以提醒大家测试时候要使用Google Chrome.-webkit-text ...
- IT兄弟连 HTML5教程 CSS3属性特效 动画-animation
CSS3属性中有关于制作动画的三个属性:Transform,Transition,Animation.前面已经介绍过Transform和Transition了,这里我们来学习Animation动画.通 ...
- IT兄弟连 HTML5教程 CSS3属性特效 transition过渡
CSS3的transition允许css的属性值在一定的时间区间内平滑地过渡.这种效果可以在鼠标单击.获得焦点.被点击或对元素任何改变中触发,并圆滑地以动画效果改变CSS的属性值. transitio ...
- IT兄弟连 HTML5教程 CSS3属性特效 遮罩
CSS遮罩提供一种基于像素级别的,可以控制元素透明度的能力,类似于png24位或png32位中的alpha透明通道的效果.遮罩有三个属性可以设置,分别是mask-image.mask-position ...
随机推荐
- 【JZOJ】3490. 旅游题解报告
题目 思路 这道题看上去就像一个动态规划!但是还是要把矩阵压成一行. 然后按 \(A\)数组 将结构体从小到大排个序. 随后我们开始了动规标准步骤: 确定状态 很显然, \(f_i\) 表示游览完第\ ...
- 重新调用 layoutSubview
重新调用 layoutSubview
- 基于JDK1.8的JVM 内存结构【JVM篇三】
目录 1.内存结构还是运行时数据区? 2.运行时数据区 3.线程共享:Java堆.方法区 4.线程私有:程序计数器.Java 虚拟机栈.本地方法栈 5.JVM 内存结构总结 在我的上一篇文章别翻了,这 ...
- 引用公共页面的js函数报错
对于网站来说很多页面之间都有着大量的共享模块,如页头,页脚和用户栏等.很多时候为了方便.省事,我们在公共模块写函数,然后在别的页面里调用.但我们在引用公共的js函数时,有些可以引用,有些却报错:这是因 ...
- 你的SpringBoot应用真的部署更新成功了吗
前提 当我们在生产环境部署了SpringBoot应用的时候,虽然可以通过Jenkins的构建状态和Linux的ps命令去感知应用是否在新的一次发布中部署和启动成功,但是这种监控手段是运维层面的.那么, ...
- php上传下载文件
之前做一个上传下载的项目,发现网上的和自己需求不是很一样,翻阅了下书籍和整理了下网上的一些代码.做了一个上传下载的demo,上传通过php本身的uploadfile函数,并返回以时间戳命名的文件名后, ...
- iOS 日志获取和实时浏览器显示日志
https://juejin.im/entry/576252855bbb500063e51c7d iOS 日志获取和实时浏览器显示日志
- 笔记||Python3之异常处理
异常概念:1 - 代码执行产生错误,无法继续 2 - 在异常前面代码是可以执行的 ---python是解释型的 3 - 异常作用 --- 程序不要退出 - 可以继续执行 同时给予程序员一定的异常提 ...
- java笔记 -- 乐观锁与悲观锁
何谓乐观锁和悲观锁 乐观锁对应于生活中乐观的人总是想着事情往好的方向发展,悲观锁对应于生活中悲观的人总是想着事情往坏的方向发展.这两种人各有优缺点,不能不以场景而定说一种人好于另外一种人. 悲观锁 - ...
- scikit-learn与数据预处理
.caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...