当需要做一个翻转卡片式的div时候,需要两个div的大小等大例如:

画出两个等大的div后,将他们重叠

图中的两个div做了重叠,做重叠时候用的属性是

position: absolute;

并且需要将第一页的css里加上z-index 可以使的第一页在第二页上

main的css需要添加

transform: translate(-50%,-50%);

课使旋转中心在div的中点

再做完重叠后需要用

transform: rotateY(-180deg);

这条语句把第二个div事先令它翻转180度,为的是再翻转回来的时候是正常的

接下来定义再定义两个优先级最高的css样式 用于翻转操作

        #first.first-turn{
z-index:;
transform: rotateY(-180deg);
}
#second.second-turn{
transform: rotateY(0deg);
}

翻转的过程中将第一个div的z-index改为0

最后定义用JQ定义两个点击事件

<script>
$("#first").click(
function(){
$("#first").toggleClass("first-turn");
$("#second").toggleClass("second-turn");
}
)
$("#second").click(
function(){
$("#first").toggleClass("first-turn");
$("#second").toggleClass("second-turn");
}
)
</script>

意思为,当点击时候增加一个css

如果要修改翻转速度可以在第一个div和第二个div的css里添加如下语句。调试可以通过谷歌浏览器

transition: .5s cubic-bezier(0.48,-0.56, 0.51, 1.67);

完整代码:

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>翻转div</title>
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
<style>
#main{
position: absolute;
width: 200px;
height: 200px;
transform: translate(-50%,-50%);
}
#first{
position: absolute;
width: 100%;
height: 100%;
background-color: #0a9404;
z-index: 1;
transition: .5s cubic-bezier(0.48,-0.56, 0.51, 1.67);
}
#second{
position: absolute;
width: 100%;
height: 100%;
background-color: #aa1111;
transform: rotateY(-180deg);
transition: .5s cubic-bezier(0.48,-0.56, 0.51, 1.67);
}
#first.first-turn{
z-index: 0;
transform: rotateY(-180deg);
}
#second.second-turn{
transform: rotateY(0deg);
}
</style>
</head>
<body>
<div id="main">
<div id="first"></div> <div id="second"></div>
</div>
</body> <script>
$("#first").click(
function(){
$("#first").toggleClass("first-turn");
$("#second").toggleClass("second-turn");
}
)
$("#second").click(
function(){
$("#first").toggleClass("first-turn");
$("#second").toggleClass("second-turn");
}
)
</script> </html>

两个重叠的div做前后翻转的更多相关文章

  1. JS之document例题讲解1(两张表之间数据转移、日期时间选择、子菜单下拉、用div做下拉菜单、事件总结)

    作业一:两个列表之间数据从一个列表移动到另一个列表 <div style="width:600px; height:500px; margin-top:20px"> & ...

  2. 9月23日JavaScript作业----用DIV做下拉列表

    例题二.用div做下拉列表 <title>无标题文档</title> <style type="text/css"> *{ margin:0px ...

  3. java 取小数点后两位 不四舍五入,怎么做

    java 取小数点后两位 不四舍五入,怎么做 正常版: //正常版: import java.text.DecimalFormat; import java.math.RoundingMode; De ...

  4. div+css实现的左右两个等高div

    工作当中我们经常会有这样的需求,尤其是在一些内容页面或者网站后台管理页面:左边的div的高度会随着右边的div的内容的增加儿增加,右边div的高度也会随着左边div的内容的增加而增加,也就是左右两侧两 ...

  5. css hover 动画 transition:background-color 0.2s,color 0.2s; 外层套内层,正常是 里外层 鼠标上来 外层有hover,如果就想到里层hover触发外层hover,要用外层position 定义绝对定位,内层的hover跳出外层的div,这样视觉上就是两个单独的div,进行内外层联动。

    css hover 动画 transition:background-color 0.2s,color 0.2s; 外层套内层,正常是 里外层 鼠标上来 外层有hover,如果就想到里层hover触发 ...

  6. 横向排列两个多个div盒子的方法(CSS浮动清除float-clear/inline)/办法

    最近在做一个div css切割,昨晚发现了长期以来一直无记录下来的问题!关于兼容IE跟FF的float属性.趁现在还清醒赶紧记下笔记先:一.并排在一行的两个div样式有这种情况:ie或者ff下对于子d ...

  7. DIV重叠 如何优先显示(div浮在重叠的div上面)

    如果有2个div有重叠,默认是根据html解析顺序,最后加载的优先级最高(浮在最上面). 问题: 如果想把前面加载的div显示在最上面?关键字:z-index 举例: --原来的页面:first di ...

  8. 怎样用div做三角形

    20181204 用盒子模型做三角形的效果: <div></div> width:0px; height:0px; border:10px solid red; border- ...

  9. 客户有两台windows服务器要做sql server双机切换

    基本架构 2 windows 2008 server:安装成域控制器,实现故障转移(虚拟ip访问,共享磁盘阵列卷链接主服务器),安装sqlserver2012 1磁盘阵列共享卷:数据库文件放于其中,两 ...

随机推荐

  1. Angular中的routerLink 跳转页面和默认路由

    1.创建新项目 2.创建home news newscontent 组件 3.找到app-rounting-moudle.ts配置路由 1)引入组件 import { HomeComponent } ...

  2. Springboot集成MapperFactory(ma.glasnost.orika.MapperFactory)类属性复制

    一.导入Jar() gradle方式 compile group: 'ma.glasnost.orika', name: 'orika-core', version: '1.5.1' maven方式 ...

  3. LeetCode_110. Balanced Binary Tree

    110. Balanced Binary Tree Easy Given a binary tree, determine if it is height-balanced. For this pro ...

  4. Release报错Debug无错

    代码在Release模式下会crash,Debug模式下可以运行,最后定位到原因 for (size_t j = 0; j < ids.size()-1; ++j) { } 发现问题是Relea ...

  5. SSRS 2016 Forms Authentication

    SSRS 2016 comes with completely new report manager web interface and implementing form authenticatio ...

  6. python3.7.3安装beautifulsoup4出现版本不兼容的问题

    今天想安装一个beautifulsoup4,结果一直出错,好多教程总是有各种坑……找了很多个教程,为了记录方法也为了分享给大家,简单些一个.但是是真真不想再费劲写一遍了……直接贴链接,亲测有效,但是底 ...

  7. 网络编程(socket).WinSocket_recvfrom出错,GetLastError()为10054

    1.在写 我的Qt598(vs2017)x64版本的 shadowsocks程序时遇到的. 具体问题情况 大概是这样:QUdpSocket(假设是sktA) connect接收函数,sktA侦听 端口 ...

  8. Edit Delete Mysql的主从复制

    参考博客 https://www.cnblogs.com/zhoujie/p/mysql1.html Mysql的主从复制至少是需要两个Mysql的服务,当然Mysql的服务是可以分布在不同的服务器上 ...

  9. PCL学习(一)从PLY文件读入点云数据

    #include <iostream> #include <pcl/io/pcd_io.h> #include <pcl/point_types.h> #inclu ...

  10. [转帖]Linux系统下x86和ARM的区别有哪些?

    Linux系统下x86和ARM的区别有哪些? https://www.cnblogs.com/alantu2018/p/9209143.html 其实界限 越来越小了.. 问题: 最近在用三星的一款i ...