当需要做一个翻转卡片式的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. Tomcat日志监控工具——Probe

    今天遇到项目运行过程中需要查看用户访问日志,log4j.properties配置好,将log日志输出到tomcat的log文件夹下,但不可能每次都去服务器上拉取log文件查看,网上找了下,发现一个日志 ...

  2. jsp中用java代码拼接下拉选备选项及默认值【我】

    <th id="TD_N_CERTIFICATION_TYPE" >证件类型:</th> <td > <select id="C ...

  3. spark "main" java.lang.ArrayIndexOutOfBoundsException: 10582

    升级 你的 paranamer 到2.8 ,这是由于你的jdk版本1.8导致 <!-- https://mvnrepository.com/artifact/com.thoughtworks.p ...

  4. 一百四十五:CMS系统之帖子加精和取消加精

    模型 class HighlightPostModel(db.Model): """ 帖子加精信息 """ __tablename__ = ...

  5. ElasticSearch文档删除字段

    https://www.cnblogs.com/ljhdo/archive/2017/03/24/4885796.html

  6. Web前端开发工具

    WebStorm: dreamweaver; Hbuilder: sublime text: 前端神器brackets.

  7. PHP实现无限极分类的两种方式,递归和引用

    面试的时候被问到无限极分类的设计和实现,比较常见的做法是在建表的时候,增加一个PID字段用来区别自己所属的分类 $array = array( array('id' => 1, 'pid' =& ...

  8. P1020 【导弹拦截】

    题目连接嘤嘤嘤~~ 这个题目还是比较难的(至少对我来说是酱紫的嘤嘤嘤).. 第一问,看题解好像用的都是DP,但其实可以用二分,求最长不上升子序列,因为只要输出答案,不用输出方案,时间复杂度n leg( ...

  9. Andrew Ng机器学习课程13

    Andrew Ng机器学习课程13 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 引言:主要从一般的角度介绍EM算法及其思想,并推导了EM算法的收敛性.最后 ...

  10. Node中导入模块require和import??

    转自:https://blog.csdn.net/wxl1555/article/details/80852326 S6标准发布后,module成为标准,标准的使用是以export指令导出接口,以im ...