3 D

3.1)rotateY

围绕着Y轴进行旋转

(1)正数是(站在右边推),负数是(站在左边推)

2.1)定义元素背过去是否可见

  1. backface-visibility: visible|hidden;

说明:visible表示可见,hidden表示不可见

测试贝塞尔曲线的网址:http://xuanfengge.com/easeing/ceaser/

1)translateZ

就是在Z轴上来回移动,但是如果没有透视的情况下,完全看不出效果,所以,一般transform:translateZ()都是配合透视一起使用

小经验:translateZ和rotate结合会产生不一样的3D效果,不同的顺序的效果截然不同,如果先rotate 在translateZ 元素是在空间里面发生旋转 而如果是translateZ在rotate 元素是在直线上发生旋转。

正值是凸出,负值相反。

2)透视 (景深)

  1. perspective:值

      

 

说明:透视值越小,透视效果越强,值越大,透视效果越弱,透视添加在父级身上

3灭点(透视点,消失点)

  1. perspective-origin:值

      

就是3D怼的方向。

说明:值可以是像素,也可以是百分比,还可以是方位名词,默认值是50%,50%(中心点)

4)transform-style

作用:规定被嵌套元素如何在3D空间中显示

  1. tranform-style:值 preserve-3D

      

值说明:flat是默认值,让子元素不保留其3D位置, preserve-3d  让子元素保留其3D位置 ,加在父亲身上

小总结:透视 灭点 transform-style都是添加在父级身上

关键: 当元素发生3D翻转的时候,整个坐标系也跟着发生了翻转!!

5)css3的动画

  1. animation:值

      

 

值说明:

(1)自定义动画名

(2)动画的持续时间 单位是s或者ms

(3)动画的曲线

(4)动画从何时开始

(5)控制动画执行的次数  没有单位, 一直执行:infinite

(6)控制动画是否逆序播放  默认值normal  逆序:alternate

(7)控制动画的播放和暂停  默认值是播放:running   暂停:paused

(8)动画最后的停留位置  forwards 让动画停留在最后一帧

动画一定要先写animation 然后搭配@keyframes去写自定义的动画

@浏览器前缀keyframes 自定义的动画名{
0%{
//css语句
}
...
100%{
//css语句
}
}

例:

  1.  @keyframes laowang{
    0%{
    width:100px;
    height:100px;
    left:0;
    transform:rotate(0deg);
    }
    50%{
    width:800px;
    height:800px;
    transform:rotate(720deg);
    }
    100%{
    width:500px;
    height:500px;
    left:800px;
    transform:rotate(-720deg);
    }
    }
 

(4)帧动画

steps(帧数)

其实就是让动画分成多少步去执行,steps()里面的数值是总画面数 - 1 ,在制作精灵图的时候每个画面的宽度尽量一致,并且建议在一行里面摆放

(5)animate.css库的使用

官网:https://daneden.github.io/animate.css/

作用:将一切常见的动画直接封装,开发者不需要考虑实现过程,只需要添加对应的类就能实现动画效果

使用步骤:

(1)将下载下来的animate.css 引入到你的项目中

(2)去官网获取想要的效果 给对应的元素添加上animated 类 (必填)和你想要的效果的类

CSS3基础03(3D②) 求粉丝的更多相关文章

  1. CSS3基础入门03

    CSS3 基础入门03 线性渐变 在css3当中,通过渐变属性实现之前只能通过图片实现的渐变效果.渐变分为线性渐变和径向渐变以及重复渐变三种.线性渐变的模式主要是颜色从一个方向过渡到另外一个方向,而径 ...

  2. CSS3 03. 3D变换、坐标系、透视perspective、transformZ、transform-style添加3D效果、backface-visibility元素背面可见、动画animation、@keyfarmes、多列布局

    1.左手坐标系 伸出左手,让拇指和食指成“L”形,大拇指向右,食指向上,中指指向前方.这样我们就建立了一个左手坐标系,拇指.食指和中指分别代表X.Y.Z轴的正方向.如下图 CSS中的3D坐标系 CSS ...

  3. h5、css3基础

    一.html(超文本标记语言) 作用:实现页面布局 页面由许多标记符号组成 由浏览器解释执行 二.html主题创建方式 !(英文状态)+tab html:4s+tab html:5+tab 三.标签 ...

  4. CSS3基础入门01

    CSS3 基础入门 01 前言 相对于css2来说,css3更新了很多的内容,其中包括选择器.颜色.阴影.背景.文本.边框.新的布局方案.2d.3d.动画等等. 而如果想要学习css3的诸多部分,不妨 ...

  5. 一款基于jQuery和CSS3炫酷3D旋转画廊特效插件

    这是一款效果炫酷的jQuery和CSS3 3D旋转画廊特效插件.该3D画廊插件可以通过前后导航按钮来切换图片,效果就像旋转木马一样.它还带有点击放大图片,显示图片标题和用键盘操作等功能. 在线预览   ...

  6. 所有用CSS3写的3D特效,都离不开这些知识

    起因 昨晚在做慕课网的十天精通CSS3课程,其中的综合练习是要做一个3D导航翻转的效果.非常高大上. 以往这些效果我都很不屑,觉得网上一大堆这些特效的代码,复制粘贴就好了,够快.但是现实工作中,其实自 ...

  7. javaSE基础03

    javaSE基础03 生活中常见的进制:十进制(0-9).星期(七进制(0-6)).时间(十二进制(0-11)).二十四进制(0-23) 进制之间的转换: 十进制转为二进制: 将十进制除以2,直到商为 ...

  8. javascript基础03

    javascript基础03 1. 算术运算符 后增量/后减量运算符 ++ ,-- 比较运算符 ( >, <, >=, <=, ==, !=,===,!== ) 逻辑运算符( ...

  9. css3基础教程:CSS3弹性盒模型

    今天给大家分享一篇关于CSS3基础教程 文章,主要是讲CSS3弹性盒模型.弹性布局的主要思想是让容器有能力来改变项目的宽度和高度,以填满可用空间(主要是为了容纳所有类型的显示设备和屏幕尺寸)的能力. ...

随机推荐

  1. out.print()和response.getWriter().write()区别

    1.print()和write()区别: write():表示的是仅支持输入字符类型数据,字符,字符数组和字符串等, print():表示的是将各种数据类型(包括object)的数据通过默认编码换成b ...

  2. angular2开发01

    // */ // ]]> angular2开发01 1. angular2 开发准备 1.1. 安装node 1.2. 安装npm 1.3. 运行qickStart 1 angular2 开发准 ...

  3. HackerRank "Equal Stacks"

    Greedy - though simple, but fun! #include <vector> #include <iostream> using namespace s ...

  4. Maven下java.lang.NoClassDefFoundError

    本文转载自:http://blog.csdn.net/qqhjqs/article/details/51491516 使用maven管理web项目中jar包之间的依赖,非常的方便好用,但是有时也会出现 ...

  5. MySql启动,提示:Plugin 'FEDERATED' is disabled....Cannot allocate memory for the buffer pool

    2016-05-27 09:25:01 31332 [Note] Plugin 'FEDERATED' is disabled. 2016-05-27 09:25:01 31332 [Note] In ...

  6. ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'type=InnoDB' at line 7

    问题: 使用hibernate4.1.1,数据库使用mysql5.1.30,使用hibernate自动生成数据库表时,hibernate方言使用org.hibernate.dialect.MySQLI ...

  7. sqlite里执行查询提示未启用约束、主键冲突之——数据竟能超字段长度存储

    数据表设计如图:szflbm为主键 数据表主键数据: 以上数据在查询时,执行到该语句adapter.Fill(table); 提示主键冲突. 解决: 1.尝试修改数据,把ZC1改成ZZ,正常.说明原因 ...

  8. javascript的一点学习

    最近用vue.js用的很爽,在全栈开发的路上一路狂奔,发现后台跟前台一起确实更有意义. 记录一个比较有意思的bug: 目标是对一个全局的paramList进行json格式化显示.代码借鉴了 http: ...

  9. Spring AOP 由浅入深

    (分析基于Spring的版本:version = 4.1.6.RELEASE) Spring AOP工厂: org.springframework.aop.framework.DefaultAopPr ...

  10. Grunt的使用

    在Node环境下.需要预先安装好Node. 1.安装grunt-cli [root@Luxh-01 ~]# npm install -g grunt-cli 2.创建一个目录test [root@Lu ...