css3 3D变形 transfrom初学

这个礼拜学了css3 3d,感觉到css无穷的魅力,可以通过几个特定的代码符号创建出3D效果的页面。


透视

一个元素需要一个透视点才能激活3D空间,有两种方法可以得到透视点(视点,焦距):

1.直接书写perspective

perspective: 600;

2.transfrom书写

transfrom:perspective(600px);

这两种发放都能实现

3.perspective-origin可以实现视角的转换默认为正中心:

好几种设置方式:perspective-origin:center center``perspective-origin:50% 50%还可以设置px;

一个页面想实现3d效果必须加上这一句

transform-style: preserve-3d;才能实现3D效果以上元素缺一不少;


transfrom

  • transfrom:transform有三种转变方法;
  • 旋转(rotate):rotateX()旋转X轴 rotateY()旋转Y轴 rotateZ()旋转Z轴
  • 缩放(scale)大小缩放效果跟2D效果一样
  • 移动(transtate)transtate(Z)前后移动。

用css3书写3D效果上面那两部缺一不可;

现在用几个实例来个大家验证一下css3 3D效果,让大家能够更好的理解css3 3D


卡牌反转效果



这个案例纯js就能写出来

首先HTML排版

<div class="box">
<div class="box1 box11"></div>
<div class="box1 box12"></div>
</div>

最简单的几个DIV排版

css代码如下

body{
transform-style:preserve-3d;//创建3d页面
perspective:500px;
background:#81b7c1;
}
.box{
width:200px;
height:200px;
margin:50px auto;
transform-style:preserve-3d;
position:relative;
transform:rotateY(0deg);
transition:transform 0.5s;
}
.box1{
width:200px;
height:200px;
position:absolute;
line-height:200px;
font-size:100px;
text-align:center;
transform-style:preserve-3d;
transform:rotateY(0deg);
}
.box:hover{
transform:rotateY(180deg)
}
.box11{
background:url(../images/3.jpg) no-repeat;
background-size:100%;
}
.box12{
background:url(../images/4.jpg) no-repeat;
background-size:100%;
transform:rotateY(180deg);
backface-visibility: hidden;//隐藏背面
}

上边用到了刚才的transfrom几个属性

立方体



相信这个案例大家对css3 3D的认识更为深切

<div class="cude">
<div class="box">
<div class="box1 front"></div>
<div class="box1 back"></div>
<div class="box1 left"></div>
<div class="box1 right"></div>
<div class="box1 top"></div>
<div class="box1 bottom"></div>
</div>
</div>

css排版


body{
background-color:rgba(46, 112, 72, 0.63);
}
.cude{
perspective:500px;
transform-style:preserve-3d;
}
.box{
transform-style:preserve-3d;
width:200px;
height:200px;
margin:200px auto;
position:relative;
transition:transform 1s;
}
.box:hover{
transform:rotateX(1800deg) rotateY(360deg); translateX(100px);
}
.box .box1{
position:absolute;
width:200px;
height:200px;
line-height:200px;
font-size:100px;
text-align:center;
opacity:1;
}
.box .left{
background-image:url(../images/1.jpg);
background-size:100%;
transform: rotateY(-90deg) translateZ(100px);
}
.box .right{
background-image:url(../images/2.jpg);
background-size:100%;
transform: rotateY(90deg) translateZ(100px);
}
.box .top{
background-image:url(../images/3.jpg);
background-size:100%;
transform: rotateX(90deg) translateZ(100px);
}
.box .bottom{
background-image:url(../images/4.jpg);
background-size:100%;
transform: rotateX(-90deg) translateZ(100px);
}
.box .back{
background-image:url(../images/5.jpg);
background-size:100%;
transform: translateZ(-100px) rotateY(180deg) rotateX(-180deg);
}
.box .front{
background-image:url(../images/6.jpg);
background-size:100%;
transform: translateZ(100px);
}

上边用到了几张图片大家是不是对css3 3D更为深切啦!

最后,学习css3 3D能让大家更好的理解3D效果,增长见识,开拓视野。

css3 3D效果的更多相关文章

  1. css3 3d效果及动画学习

    css参考手册: http://www.phpstudy.net/css3/ http://www.css88.com/book/css/ 呈现3d效果:-webkit-transform-style ...

  2. 一篇文章搞定css3 3d效果

    css3 3d学习心得 卡片反转 魔方 banner图 首先我们要学习好css3 3d一定要有一定的立体感 通过这个图片应该清楚的了解到了x轴 y轴 z轴是什么概念了. 首先先给大家看一个小例子: 卡 ...

  3. CSS3,3D效果轮播图

    ---恢复内容开始--- 大家还记得我昨天的3D拖拽立方体吗??我昨天还说过css还可以做轮播图,所以咱们今天就写一下,css的轮播图吧! ....这个轮播图主要是用CSS3里的transform的旋 ...

  4. CSS3——3D效果

    1.效果1 <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" c ...

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

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

  6. css3 3D变形 入门(一)

    css3 3D.html div.oembedall-githubrepos { border: 1px solid #DDD; list-style-type: none; margin: 0 0 ...

  7. css3 3d初入门(一)

    css3 3D.html div.oembedall-githubrepos { border: 1px solid #DDD; list-style-type: none; margin: 0 0 ...

  8. CSS3 3D transform变换

    .实际应用-图片的旋转木马效果 您可以狠狠地点击这里:图片的旋转木马效果demo 建议在足够新版本的FireFox浏览器或Safari浏览器下观看,Chrome可能需要居中定位查看,下图为效果缩略图: ...

  9. 好吧,CSS3 3D transform变换,不过如此!——张鑫旭

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

随机推荐

  1. 解决phpcms V9缩略图模糊的方法

    解决V9缩略图模糊/libs/classes/image.class.php注释掉else   imagecopyresized($thumbimg, $srcimg, 0, 0, $psrc_x,  ...

  2. Struts2实现异步调用机制详细剖析(XML和JSON)

    一.使用XML传递 1.页面展示getXML.jsp <%@ page language="java" import="java.util.*" page ...

  3. spring 5种通知

    方法实现接口 package com.cn.spring.aop.impl; //加减乘除的接口类 public interface ArithmeticCalculator { int add(in ...

  4. N-gram语言模型简单介绍

    N-gram语言模型 考虑一个语音识别系统,假设用户说了这么一句话:"I have a gun",因为发音的相似,该语音识别系统发现如下几句话都是可能的候选:1.I have a ...

  5. Qt下libusb-win32的使用方法(转)

    源:Qt下libusb-win32的使用方法 之前一直找不到适合WIN7下的Tiny6410的USB下载软件,正好这几天开始学习USB,所以打算自己写一个专门用于Tiny6410的WIN7下的USB下 ...

  6. Unity3D ——强大的跨平台3D游戏开发工具(一)

    众所周知,Unity3D是一个能够实现轻松创作的多平台的游戏开发工具,是一个全面整合的专业游戏引擎.在现有的版本中,其强大的游戏制作功能已 经达到让人瞠目结舌的地步.尤其是它在3.0版本里面制作的那款 ...

  7. php中字符串长度和截取的函数

    在做PHP开发的时候,由于我国的语言环境问题,所以我们常常需要对中文进行处理. 在PHP中,我们都知道有专门的mb_substr和mb_strlen函数,可以对中文进行截取和计算长度,但是,由于这些函 ...

  8. Valgrind 快速入门

    1. 介绍 Valgrind工具组提供了一套调试与分析错误的工具包,能够帮助你的程序工作的更加准确,更加快速.这些工具之中最有名的是Memcheck.它能够识别很多C或者C++程序中内存相关的错误,这 ...

  9. [Angular Tutorial] 2-Angular Templates

    是时候用AngularJS生成我们的动态页面了. 通常我们有很多方法来构建一个应用的代码.对于Angular的应用,我们鼓励使用MVC设计模式来解耦代码并且实现职责独立.记住这个,现在让我们在我们的应 ...

  10. bootstrap-datepicker的简单使用

    先说datepicker. github上的地址是:https://github.com/eternicode/bootstrap-datepicker. 效果如下: 在bundle里面引用添加js ...