原理是基于css3的

1、景深:perspective:100px;

2、中心点:transform-origin:center center 0;

3、transform-style:preserve-3d  父级作变换会保留效果到子集上面

通过节点嵌套 实现立方体效果:

<div class="box">
<div class="div">
<div>
<span>1</span>
<div>
<span>2</span>
<div>
<span>3</span>
<div>
<span>4</span>
</div>
</div>
</div>
</div>
</div>
</div>
   .box { width:100px;height:100px; padding:50px; margin:100px auto; perspective: 200px;}
.box .div { position: relative; width:100px;height:100px; transform-origin:center center -50px; transform-style:preserve-3d; transition:3s; }
.box .div div{ position:absolute; left:100px; top:0px; transform:rotateY(90deg); background:green; width:100px;height:100px; transform-style:preserve-3d; transform-origin:left;}
.box .div>div{ left:0px;transform:rotateY(0deg);}
.box:hover .div { transform:rotateY(-360deg); }
.div span{ color:white; display:block; color:white; text-align:center; line-height:100px; }

--------------以上是实现原理----------------------

下面是实现的效果

function setLayout(){
var list = id("imgList");
var li = list.getElementsByTagName("li");
var liH = (list.clientHeight)/4;
var str = "";
for(var i=0;i<16;i++){
str += '<li><div class="div"><div><span></span><div><span></span><div><span></span><div><span></span></div></div></div></div></div></li>';
}
list.innerHTML=str;
id("css").innerHTML += "#imgList li{height:"+liH+"px}";
for(var i=0; i<li.length;i++){
var span = li[i].getElementsByTagName("span");
for(var j=0; j<span.length;j++){
span[j].style.backgroundImage = "url("+imgUrls[j]+")";
span[j].style.backgroundPosition=-(i%4)*4+"rem -"+parseInt(i/4)*liH+"px";
}
}
}

主要是在页面生成16个li然后通过背景设置span的background-position确定每个小格子的位置

css3 手机端翻屏切换效果的更多相关文章

  1. jQuery手机端触摸卡片切换效果

    效果:http://hovertree.com/code/run/jquery/a1gr3gm9.html 可以用手机查看效果. 代码如下: <!doctype html> <htm ...

  2. jquery 单行滚动、批量多行滚动、文字图片翻屏滚动效果代码

    jquery单行滚动.批量多行滚动.文字图片翻屏滚动效果代码,需要的朋友可以参考下. 以下代码,运行后,需要刷新下,才能加载jquery,要不然看不到效果.一.单行滚动效果 <!DOCTYPE ...

  3. CSS3手机端字体不能小于12号的方法

    CSS3手机端字体不能小于12号的方法 <pre> .xiaoyu12fontsize{ -webkit-transform-origin: 0% 0%; -webkit-transfor ...

  4. 手机端的tab切换,响应式切换效果

    之前写过这些tab切换的效果,无论网页上还是手机端,网上也有很多的例子,这个好像是我参考网上,也不知道是哪里的了.总结了一下,就当保存下来了把. <!DOCTYPE html > < ...

  5. fullpage 单屏高度超过屏幕高度,实现单屏内可以滚动并解决手机端单屏高度不正确的问题

    最近接触了好几次jquery.fullpage.js这个插件,实现整屏的滑动,效果很炫,用fullpage来实现也很简单,但是也碰到了一些问题和大家分享一下 1.单屏高度超过屏幕高度,实现单屏的滑动 ...

  6. css3制作惊艳hover切换效果

    css3制作经验hover切换效果 <!DOCTYPE html><html> <head> <meta charset="UTF-8" ...

  7. html手机端全屏显示和溢出问题

    <meta name="viewport" content="width=1200, initial-scale=0.3"> initial-sca ...

  8. 【CSS3】使用CSS3制作全屏切换效果

    在线演示: DEMO DEMO中及以下代码并没有写兼容代码,请使用高级浏览器打开,IE版本对CSS3支持并不太友好,IE11打开没有滚屏效果. 兼容代码前缀: -webkit- -moz- -o- - ...

  9. Html 全屏切换效果

    来源 http://www.imooc.com/learn/374 pageswitch.js (function ($) { var defaults = { 'container': '#cont ...

随机推荐

  1. 01_7_cookies

    01_7_cookies 1. cookies 1.1服务器可以向客户端写内容 1.2只能是文本内容 1.3客户端可以阻止服务器写入 1.4只能拿到自己webapp写入的东西 1.5Cookie分为两 ...

  2. new和delete的动态分配。

    c++对象模型 视频的实际操作  note: 1.虚函数有虚指针,所以是4,不管有几个虚函数, 都只有一个vptr来存放调用的虚函数的地址. 2.子类的内存是父类内存的加自己的数据内存. 3.clas ...

  3. python入门:print打印输出的用法

    #!/usr/bin/python # -*- coding:utf-8 -*- # print打印输出的用法 print("holle,world!") print(1) pri ...

  4. phpstorm 工具使用技巧(持续补充中。。。)

    phpstorm 工具使用技巧(持续补充中...) 一.phpstorm大小写切换 1.选择要转换的目标字符串: //普通商家,普通折扣默认值'COMMON_DISCOUNT'=>10.00, ...

  5. 【mysql】【转发】my.cnf 讲解

    PS:本配置文件针对Dell R710,双至强E5620.16G内存的硬件配置.CentOS 5.6 64位系统,MySQL 5.5.x 稳定版.适用于日IP 50-100w,PV 100-300w的 ...

  6. python-面试常用 --变量、内存管理(小整数池,引用计数)

    执行Python程序的两种方法 第一种:交互式(jupyter就是对这种进行了封装) 优点:直接给出结果 缺点:无法保存 第二种:命令行式,通过Python解释器输入文本(pycharm对这种进行了封 ...

  7. STM32CUBEMX入门学习笔记2:关于STM32芯片使用内部flash

    找到正点原子的官网,下载他的HAL库:http://www.openedv.com/thread-109778-1-1.html 找到此例程,并打开其工程文件. 找到此文件,复制到自己工程里 复制到自 ...

  8. python的标准模块

    本文用于记录python中的标准模块,随时更新. decimal模块(解决小数循环问题): >>> import decimal >>> a = decimal.D ...

  9. Linuxx学习-特殊文件与进程

    具有 SUID/SGID 权限的指令执行状态 SUID 的权限其实与进程的相关性非常的大!为什么呢?先来看看 SUID 的程序是如何被一般用户 执行,且具有什么特色呢? SUID 权限仅对二进制程序( ...

  10. C++ 虚函数&纯虚函数&抽象类&接口&虚基类(转)

    http://www.cnblogs.com/fly1988happy/archive/2012/09/25/2701237.html 1. 多态 在面向对象语言中,接口的多种不同实现方式即为多态.多 ...