css3 3D变形效果


CSS3 transform3D变形

transform的含义是:改变,使…变形;转换



三维变换使用基于二维变换的相同属性,如果您熟悉二维变换,你们发现3D变形的功能和2D变换的功能相当类似。CSS3中的3D变换主要包括以下几种功能函数:

  • 3D位移:CSS3中的3D位移主要包括translateZ()和translate3d()两个功能函数;
  • 3D旋转:CSS3中的3D旋转主要包括rotateX()、rotateY()、rotateZ()和rotate3d()四个功能函数;
  • 3D缩放:CSS3中的3D缩放主要包括scaleZ()和scale3d()两个功能函数;

transform:translate():

含义:变动,位移;如下表示向右位移120像素,如果向上位移,把后面的“0”改个值就行,向左向下位移则为负“-”。

HTML代码如下:
<div class="demo_transform1"></div>

css代码如下:
.demo_transform1{
width: 300px;
height: 200px;
background: #00f;
margin: 50px auto;
-webkit-transform:translate(120px,0);
-moz-transform:translate(120px,0px);
}

transform:rotate():

含义:旋转;其中“deg”是“度”的意思,如“10deg”表示“10度”下同。

HTML代码如下:
<div class="demo_transform2"></div>

css代码如下:

.demo_transform2{
width: 300px;
height: 200px;
background: #00f;
margin: 50px auto;
-webkit-transform:rotate(10deg);
-moz-transform:rotate(10deg);
}

transform:scale():

含义:比例;“1.5”表示以1.5的比例放大,如果要放大2倍,须写成“2.0”,缩小则为负“-”。

HTML代码如下:
<div class="demo_transform3"></div>

css代码如下:

.demo_transform3{
width: 300px;
height: 200px;
background: #00f;
margin: 50px auto;
-webkit-transform:scale(1.5);
-moz-transform:scale(1.5);
}

transform:skew():

含义:倾斜;

HTML代码如下:
<div class="demo_transform4"></div>

css代码如下:

.demo_transform4{
width: 300px;
height: 200px;
background: #00f;
margin: 50px auto;
-webkit-transform:skew(20deg);
-moz-transform:skew(20deg);
}

transform综合:

transform的常用属性就是这些了,下面我们借助transition的帮忙来演示一个关于css3 transform的综合实例(一个摇筛子3D效果):


效果图如下:



HTML代码如下:

html

##### css代码如下:
***
```css
body{
background: #864521;
}
/*视距800px*/
.box{
perspective: 800px;
transform-style: preserve-3d;
margin-top: 100px;
}
.zhuan{
width: 200px;
height: 200px;
margin: 0 auto;
position: relative;
transform-style: preserve-3d;
/*设置时间为5秒*/
transition: 5s;
}
/*鼠标移上之后开始旋转*/
.zhuan:hover{
transform:rotateY(3600deg) rotateX(1800deg);
}
.zhuan .bian{
width: 200px;
height: 200px;
position: absolute;
} /*设置图片1,延Y轴旋转90度,延Z轴移100px*/
.yi{
transform: rotateY(90deg) translateZ(100px);
background: url(../img/1.png) no-repeat;
background-size: 100% 100%;
}
/*设置图片2,延Y轴旋转90度,延Z轴移-100px*/
.er{
transform: rotateY(90deg) translateZ(-100px) rotateY(180deg);
background: url(../img/2.png) no-repeat;
background-size: 100% 100%;
}
/*设置图片3,延X轴旋转90度,延Z轴移100px*/
.san{
transform: rotateX(90deg) translateZ(100px);
background: url(../img/3.png) no-repeat;
background-size: 100% 100%;
}
/*设置图片4,延X轴旋转90度,延Z轴移-100px*/
.si{
transform: rotateX(90deg) translateZ(-100px) rotateX(180deg);
background: url(../img/4.png) no-repeat;
background-size: 100% 100%;
}
/*设置图片5,延Z轴移100px*/
.wu{
transform: translateZ(100px);
background: url(../img/5.png) no-repeat;
background-size: 100% 100%;
}
/*设置图片6,延Y轴旋转180度,延Z轴移-100px*/
.liu{
transform: translateZ(-100px) rotateY(180deg);
background: url(../img/6.png) no-repeat;
background-size: 100% 100%;
}

!!!注意:拷贝源码,一定要引用对css路径,设置对图片路径,方能实现效果!



今天主要向大家介绍了3D空间的3D旋转、3D位移、3D缩放功能以及应用场景。让大家对3D Transform有一个初步的了解,并能根据这些基础知识制作出自己需要的效果。

作者:大鹏哥

都能读懂的css3 3D变形效果的更多相关文章

  1. 人人都能读懂的css3 3d小demo

    css3 3d案例总结 最近入坑 Web 动画,所以把自己的学习过程记录一下分享给大家.就把最近做的比较好的给大家分享下 1.旋转拼图 首先看下效果 代码主要由HTML和CSS3组成,应该说还是比较简 ...

  2. CSS3 3D变形效果

    CSS3 3D变形效果 CSS3 transform3D变形 transform的含义是:改变,使-变形:转换 三维变换使用基于二维变换的相同属性,如果您熟悉二维变换,你们发现3D变形的功能和2D变换 ...

  3. 这是一篇每个人都能读懂的最小生成树文章(Kruskal)

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是算法和数据结构专题的第19篇文章,我们一起来看看最小生成树. 我们先不讲算法的原理,也不讲一些七七八八的概念,因为对于初学者来说,看到 ...

  4. 小学生都能读懂的网络协议之:WebSocket

    目录 简介 webSocket vs HTTP HTTP upgrade header websocket的优点 webScoket的应用 websocket的握手流程 WebSocket API 总 ...

  5. sharding:谁都能读懂的分库、分表、分区

    本文通过大量图片来分析和描述分库.分表以及数据库分区是怎样进行的. 1.sharding前的初始数据分布 在本文中,我打算用高考考生相关信息作为实验数据.请无视表的字段是否符合现实,也请无视表的设计是 ...

  6. 7款外观迷人的HTML5/CSS3 3D特效按钮特效

    下面我整理了7款外观都十分迷人的HTML5/CSS3 3D按钮特效,有几个还挺实用的,分享给大家. 1.CSS3超酷3D弹性按钮 按钮实现非常简单 之前我们分享过几款不错的CSS3 3D立体按钮,比如 ...

  7. 好吧,CSS3 3D transform变换,不过如此!

    一.写在前面的秋裤 早在去年的去年,我就大肆介绍了2D transform相关内容.看过海贼王的都知道,带D的家伙都不是好惹的,2D我辈尚可以应付,3D的话,呵呵,估计我等早就在千里之外被其霸气震晕了 ...

  8. 一文带你读懂什么是vxlan网络

    一个执着于技术的公众号 一.背景 随着云计算.虚拟化相关技术的发展,传统网络无法满足大规模.灵活性要求高的云数据中心的要求,于是便有了overlay网络的概念.overlay网络中被广泛应用的就是vx ...

  9. 【Web动画】CSS3 3D 行星运转 && 浏览器渲染原理

    承接上一篇:[CSS3进阶]酷炫的3D旋转透视 . 最近入坑 Web 动画,所以把自己的学习过程记录一下分享给大家. CSS3 3D 行星运转 demo 页面请戳:Demo.(建议使用Chrome打开 ...

随机推荐

  1. Unity中的CG编写Shader系列(Blend)

    1.不透明度 当我们要将两个半透的纹理贴图到一个材质球上的时候就遇到混合的问题,由于前面的知识我们已经知道了片段着色器以及后面的环节的主要工作是输出颜色与深度到帧缓存中,所以两个纹理在每个像素上的颜色 ...

  2. 原来在ARC下还有这么多不同?!

    1.ARC空声明变量 使用ARC的另一个优势是所有未初始化的变量默认都是"空值化"的.这意味着像下面这样的声明使用ARC编译后指向的是空值(nil): NSObject myObj ...

  3. linux 驱动入门6

    看/sys目录经常看到bus device driver class. 这也是网上大量说的驱动驱动模型.这些的关系得熟悉得明白吧.是的.今天我先不整他们的关系.先逐个击破,然后再统一来理清楚他们之间的 ...

  4. sencha cmd常用命令汇总

    一.sencha generate:自动生成项目或者代码 1.sencha generate app 项目名称 生成路径 :生成一个新的extjs项目 注明:以上命令会从官网下载试用版本的ext代码到 ...

  5. (中等) POJ 2528 Mayor's posters , 离散+线段树。

    Description The citizens of Bytetown, AB, could not stand that the candidates in the mayoral electio ...

  6. FZU 1397 保送

    网络流入门题. 源点到每一个学生连一条边,容量为1 每个学校到汇点连一条边,容量为L 符合要求的学生和学校之间连边,容量为1. 从源点到汇点的最大流就是答案. #include<cstdio&g ...

  7. tornado 增加日志模块

    log类 #!/usr/bin/env python # -*- coding:utf-8 -*- import logging.handlers class Logger(logging.Logge ...

  8. LPC2478的外部中断使用

    LPC2478外部中断 2478的外部中断模型如下 也就是说,port0和2支持外部中断,EINT0-2是三个独立管脚的中断,而EINT3则是port0和2的所有中断共同拥有的向量 对于port0和2 ...

  9. Incompatible pointer types assigning to 'id<>' from 'Class'错误

    实例变量在类方法中被使用 原因:静态方法访问了非静态变量属性(.h中声明的那些属性),就是类方法访问了成员变量

  10. P4语言编程快速开始 实践二

    参考:P4语言编程快速开始 上一篇系列博客:P4语言编程快速开始 实践二 Demo 2 本Demo所做的修改及实现的功能: 为simple_router添加一个计数器(counter),该计数器附加( ...