CSS3 3D变换实例 滚动的正方体
笔记:
2D变换
transform
位移
translateX() translateY()
简写:translate(X值,Y值) 正值向右,负值向左
旋转 rotate()
rotate(?deg) 括号中为角度值 正值是顺时针旋转,负值是逆时针旋转
缩放 scale()
scale() 括号中为数值,可以为浮点数 如大于1是放大效果,小于1是缩小效果
变形(斜切)
skewX() skewY()
简写:skew(X轴斜切角度,Y轴斜切角度)
body:hover div{
transform:translate(100px,100px) rotate(30deg) scale(1.5) skew(40deg,40deg)
}
解析顺序:根据transform内写的顺序进行解析。
变换原点:
transform-orign:
left right top bottom
center(默认) 当设置相应的值后,会按照相应设置的值发生变换。
3D变换
3D效果:首先给需要进行3D变换元素的父级添加3D环境和景深。
写法:
transform-style:preserve-3d; <!--添加3D环境-->
perspective:数值; 如:300px; <!--景深--> 数值较低的话无效果
transform
rotateX 沿X轴旋转:正值向右翻转,负值向左翻转
rotateY 沿y轴旋转:正值向右翻转,负值向左翻转
rotateZ 沿z轴旋转:正值向屏幕外,负值向屏幕内
translateX 沿X轴位移:正值向右,负值向左
translateY 沿y轴位移:正值向下,负值向上
translateZ 沿z轴位移:正值向屏幕外,负值向屏幕内
实例代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>3D正方形实例</title>
<style type="text/css">
#box{
width: 100px;
height: 100px;
padding: 100px;
margin: 100px auto;
perspective:300px;
} #val{
width: 100px;
height: 100px;
position: relative;/*设置相对定位*/
transform-style: preserve-3d;/*给父级设置3D环境*/
transform-origin: center center -50px;/*沿中轴线转动*/
transition: 1s;/*响应时间1s*/
}
#val div{
position: absolute;/*设置绝对定位*/
width: 100px;
height: 100px;
background: blue;
text-align: center;
font: 40px/100px "微软雅黑";
}
#val div:nth-of-type(1){
background: yellow;
}
#val div:nth-of-type(2){
left:-100px;/*定位 沿X轴向左移动100px*/
background: red;
transform-origin: right;/*位移点为右边*/
transform:rotateY(-90deg);/*向Y轴翻转向左90度*/
}
#val div:nth-of-type(3){
top:-100px;/*定位 沿Y轴向上移动100px*/
background:pink;
transform-origin: bottom;/*位移点为下边*/
transform:rotateX(90deg); /* 沿X轴向内翻转90度*/
}
#val div:nth-of-type(4){
left:100px;
background: #FF6600;
transform-origin: left;
transform:rotateY(90deg);
}
#val div:nth-of-type(5){
top:100px;
background: #1883BA;
transform-origin: top;
transform:rotateX(-90deg);
}
#val div:nth-of-type(6){
background: gray;
transform:translateZ(-100px) rotateX(-180deg); /*翻转180度,不然数字6为镜像显示*/
}
#val:hover {
transform: rotateY(360deg) ; /*鼠标停留,X轴旋转360度,Y轴旋转30度*/
}
</style>
</head>
<body>
<div id="box">
<div id="val">
<div>1</div>
<div>2</div>
<div>3</div>
<div>4</div>
<div>5</div>
<div>6</div>
</div>
</div>
</body>
</html>
实现效果:鼠标停留,立方体旋转。

CSS3 3D变换实例 滚动的正方体的更多相关文章
- CSS3 3D变换
可以这么说,3D变换是基于三维坐标系的.以下是“盗用”的图 CSS3中的3D变换主要包括以下几个功能函数: 3D位移:包括translateZ()和translate3d(): 3D旋转:包括rota ...
- CSS3之3D变换实例详解
CSS3的3D效果很赞,本文实现简单的两种3D翻转效果.首先看效果和源代码,文末是文绉绉的总结部分^_^ 以下CSS代码为了简洁没有添加前缀,请视情况自行添加(自动化时代推荐使用其他的一些方法,如gu ...
- css3 3D变换和动画
3D变换和动画 建立3D空间,transform-style: preserve-3d perspective: 100px; 景深 perspective-origin:center center ...
- css3 3d变换和动画——回顾
1.transform-style 属性指定嵌套原始是怎样在三维空间中呈现. 语法:transform-style: flat | preserve-3d flat 表示所有子元素在2D平面呈现. p ...
- CSS3 3D轮播主要可以分成这样的三类
中秋节假期这么快就没了,这几天还一直下雨,索性在家看看书.这次看的是Tom Lane的<A Tour of PostgreSQL Internals>.这篇小随笔就算做学习笔记了.园子里面 ...
- 好吧,CSS3 3D transform变换,不过如此!
一.写在前面的秋裤 早在去年的去年,我就大肆介绍了2D transform相关内容.看过海贼王的都知道,带D的家伙都不是好惹的,2D我辈尚可以应付,3D的话,呵呵,估计我等早就在千里之外被其霸气震晕了 ...
- 好吧,CSS3 3D transform变换,不过如此!——张鑫旭
一.写在前面的秋裤 早在去年的去年,我就大肆介绍了2D transform相关内容.看过海贼王的都知道,带D的家伙都不是好惹的,2D我辈尚可以应付,3D的话,呵呵,估计我等早就在千里之外被其霸气震晕了 ...
- IT兄弟连 HTML5教程 CSS3属性特效 3D变换3
5 3D旋转 在三维变形中,我们可以让元素在任何轴旋转.为此,CSS3新增了三个旋转函数:rotateX().rotateY()和rotateZ().使用rotateX()函数允许一个元素围绕X轴旋 ...
- IT兄弟连 HTML5教程 CSS3属性特效 3D变换1
3D变换较2D变换多了一下的转换属性,3D转换属性及描述如表1: 表1 3D转换属性 3D的转换方法如表2: 表2 3D转换方法 1 transform-style transform- ...
随机推荐
- 直流电机PWM调速系统中控制电压非线性研究_控制元件_工业自动化控制_文章
直流电机PWM调速系统中控制电压非线性研究_控制元件_工业自动化控制_文章_e-works数字化企业网 http://articles.e-works.net.cn/Component/Article ...
- vue项目中的常见问题(vue-cli版本3.0.0)
一.样式问题 1.vue中使用less 安装less依赖 npm install less less-loader --save-dev 在使用时 在style标签中加入 lang="les ...
- 学习记录--如何将exec执行结果放入变量中?
declare @num int, ) set @sqls='select @a=count(*) from tb ' exec sp_executesql @sqls,N'@a int output ...
- mode-c++
/*感谢机房JYW的友情馈赠*/#include <iostream> #include <cstdio> #include <cstring> #include ...
- jenkins 构建被中断 脚本却还在执行
JobA + git clean -df 构建被中断 被 XXX 终止 Finished: ABORTED 再次jenkins调用JobA 后台进程中 出现了两个JobA的脚本同时执行,导致一些莫名其 ...
- 在NSUserDefaults中保存自己定义的对象
在iOS开发中.须要用到一些回调值(从A到B,从B返回时把B中的值带回A中).事实上方法也非常多(delegate,block.nsuserdefaults等).我想用NSUserDefaults回调 ...
- Java:深入自定义注解(Annotation)
在网上找了很多资料也有写的比较好的,但是总有有一点半点的细节没有写出来,在这里自己总结下使用. 使用Java的自定义注解,首先个人需要了解下Java为我们提供的元注解和相关定义注解的语法.(这个我在网 ...
- Python图像处理库PIL中图像格式转换(一)
在数字图像处理中,针对不同的图像格式有其特定的处理算法. 所以,在做图像处理之前,我们须要考虑清楚自己要基于哪种格式的图像进行算法设计及事实上现.本文基于这个需求.使用python中的图像处理库PIL ...
- android4.4的两个bug
Android4.4做了大量的改动.但也造成了非常多新的问题. 工作中碰到了几个比較有趣的bug.这两个bug在nexus 5上也有. 记录一下.以资纪念 1.Android4.4在解析jpg头的时候 ...
- python 004 执行环境对比
对比:os.system os.popen subprocess.Popen subprocess.call 为什么要搞这么多? # --*--encoding: utf-8--*-- import ...