-webkit-transform-style:-webkit-preserve-3d;//设置3D转换

translateX:px; 平移
translateY:px;
translateZ:px; rotateX:deg; 旋转
rotateY:deg;
rotateZ:deg; transform-origin://旋转中心 X轴 left center right Y轴 top center bottom Z轴 length px 三维属性
-webkit-perspective:; 表示Z轴距离,浏览器距离3D物体的距离
-webkit-perspective-origin:% %;表示浏览器正中心看过去
<style type="text/css">
*{margin:0px;padding:0px;}
ul{list-style:none;}
#test{
margin-top: 100px;
-webkit-perspective:;
perspective:;
-webkit-perspective-origin: % %;
perspective-origin: % %;
overflow: hidden;
}
.block{
position:relative;
height:300px;
width: 300px;
margin:0px auto;
-webkit-transform-style: preserve-3d;/* 设置其子元素的3D属性*/
transform-style: preserve-3d;
}
.block li{
height:%;
width:%;
background-color: #;
color:#FFF;
position:absolute;
line-height:%;
font-size:300px;
text-align:center;
-webkit-transition:-webkit-transform 1s linear;
transition:transform 1s linear;
-webkit-transform-origin:bottom;
transform-origin:bottom;
}
#test2,#test3,#test4,#test5,#test6{
-webkit-transform: rotateX(90deg);
transform: rotateX(90deg);
}
</style>
</head>
<body>
<!--创建3D场景-->
<div id="test">
<!--内容-->
<ul class="block">
<li id='test1'></li>
<li id='test2'></li>
<li id='test3'></li>
<li id='test4'></li>
<li id='test5'></li>
<li id='test6'></li>
</ul>
</div>
<div class="btn" style="width:300px;margin:0 auto;text-align:center;">
<a href="javascript:prev()">prev</a> <a href="javascript:next()">next</a>
</div>
</body>
<script type="text/javascript">
var clearIndex = ;
function next(){
if(clearIndex==){
return;
}
var currentIndex = document.getElementById('test'+clearIndex);
currentIndex.style.transform = 'rotateX(-90deg)';
currentIndex.style.webkitTransform = 'rotateX(-90deg)';
clearIndex++;
var nextIndex = document.getElementById('test'+clearIndex);
nextIndex.style.transform = 'rotateX(0deg)';
nextIndex.style.webkitTransform = 'rotateX(0deg)';
}
function prev(){
if(clearIndex==){
return;
}
var currentIndex = document.getElementById('test'+clearIndex);
currentIndex.style.transform = 'rotateX(90deg)';
currentIndex.style.webkitTransform = 'rotateX(90deg)';
clearIndex--;
var prevIndex = document.getElementById('test'+clearIndex);
prevIndex.style.transform = 'rotateX(0deg)';
prevIndex.style.webkitTransform = 'rotateX(0deg)';
}
</script>

3D翻页效果

CSS3d 基础的更多相关文章

  1. Bootstrap中的less基础

    在线编译 因为 less 的语法毕竟相对简单,所以一些在线工具可以很轻松的做到.比如 http://less.cnodejs.net http://www.ostools.net/less  一般都有 ...

  2. css 3d 基础知识

    css3d 总结 3d transform (3D变形)(rotate skew scale translate) 基础知识 perspective (视距,景深) perspective-origi ...

  3. java基础集合经典训练题

    第一题:要求产生10个随机的字符串,每一个字符串互相不重复,每一个字符串中组成的字符(a-zA-Z0-9)也不相同,每个字符串长度为10; 分析:*1.看到这个题目,或许你脑海中会想到很多方法,比如判 ...

  4. node-webkit 环境搭建与基础demo

    首先去github上面下载(地址),具体更具自己的系统,我的是windows,这里只给出windows的做法 下载windows x64版本 下载之后解压,得到以下东西 为了方便,我们直接在这个目录中 ...

  5. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  6. Golang, 以17个简短代码片段,切底弄懂 channel 基础

    (原创出处为本博客:http://www.cnblogs.com/linguanh/) 前序: 因为打算自己搞个基于Golang的IM服务器,所以复习了下之前一直没怎么使用的协程.管道等高并发编程知识 ...

  7. [C#] C# 基础回顾 - 匿名方法

    C# 基础回顾 - 匿名方法 目录 简介 匿名方法的参数使用范围 委托示例 简介 在 C# 2.0 之前的版本中,我们创建委托的唯一形式 -- 命名方法. 而 C# 2.0 -- 引进了匿名方法,在 ...

  8. HTTPS 互联网世界的安全基础

    近一年公司在努力推进全站的 HTTPS 化,作为负责应用系统的我们,在配合这个趋势的过程中,顺便也就想去搞清楚 HTTP 后面的这个 S 到底是个什么含义?有什么作用?带来了哪些影响?毕竟以前也就只是 ...

  9. Swift与C#的基础语法比较

    背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...

随机推荐

  1. 【java规则引擎】《Drools7.0.0.Final规则引擎教程》第4章 4.2 agenda-group

    转载:https://blog.csdn.net/wo541075754/article/details/75332720 agenda-group 规则的调用与执行是通过StatelessKieSe ...

  2. jsp servlet 进行基于js的用户验证

    写这个只是完成使用js文件参数进行用户验证的处理的jsp 版,已经写过 asp.net php nodejs 以及纯js的,现在完善jsp的 使用的技术是比较简单的就是站点应用我们的js脚本,但是是带 ...

  3. nyoj Registration system

    Registration system 时间限制:1000 ms  |  内存限制:65535 KB 难度:2   描述 A new e-mail service "Berlandesk&q ...

  4. chrome浏览器network面板出现:Provisional headers are shown 提示

    一般来说,如果看到这个提示,说明这个请求并没有发送出去. 具体原因有多种: 请求被某些扩展如 Adblock 拦截了 请求被墙了 走本地缓存或者 dataurl 的请求 client发送请求后,由于各 ...

  5. 解决mysql 8 安装后命令行可以连接,navicat不能连接的问题

    错误代码: client does not support authentication 解决办法: 1 使用命令行进入数据库 2 选着数据库  mysql   --> user mysql 3 ...

  6. golang kafka client

    针对golang的 kafka client 有很多开源package,例如sarama, confluent等等.在使用sarama 包时,高并发中偶尔遇到crash.于是改用confluent-k ...

  7. thinkphp 3.2.3在nginx+php下的url重写配置经验

    环境:centos7.2+lnmp1.3(nginx+php7.0+mysql5.5) 进入服务器配置路径:cd /usr/local/nginx/conf/nginx.conf 修改nginx.co ...

  8. 浏览器同源策略,跨域请求jsonp

    浏览器的同源策略 浏览器安全的基石是"同源政策"(same-origin policy) 含义: 1995年,同源政策由 Netscape 公司引入浏览器.目前,所有浏览器都实行这 ...

  9. 【Spring学习笔记-MVC-12】Spring MVC视图解析器之ResourceBundleViewResolver

    场景 当我们设计程序界面的时候,中国人希望界面是中文,而美国人希望界面是英文. 我们当然希望后台代码不需改变,系统能够通过配置文件配置,来自己觉得是显示中文界面还是英文界面. 这是,Spring mv ...

  10. jmeter 参数化方法

    1.csv 看异步图书 JMeter实战60页