[知了堂学习笔记]_css3特效第一篇--旋转的背景&翻书效果
一、html遮盖层与css3的旋转动画
>效果图(加载可能会慢一点儿,请稍等...):

>实现思路:在一个大的div中装入一个底层img和顶层的div(里面的内容按照以上图片呈现的样式布局),给底层图片设置样式让其成现出圆形图片的样式,通过绝对定位覆盖层的位置。给外层div添加鼠标悬浮的事件,当鼠标悬浮的时候让覆盖层的透明度改变,显示出底层的图片,同时让底层图片执行旋转动画。具体实现见以下代码。
>html代码:
<div class="instruction">
<a href="#">
<img class="bgImg" src="data:images/shop3.jpg"> <!-- 底层图片 -->
<div class="cover"><!-- 顶层 -->
<img src="data:images/icon4.png"> <!-- 顶层图标 -->
<h3>轻奢国际范儿</h3> <!-- 顶层标题 -->
<div>7大国际品牌联盟,<br>与英国斯林百兰床垫、新加坡HTL沙发等国际知名品牌深度联盟,
沙发、床垫可定制</div> <!-- 顶层内容 -->
</div>
</a>
</div>
>css代码
/*整个div instruction 的样式 */
.instruction {
width: 256px;
height: 256px;
text-align: center;
position: relative;
}
/*底层样式 */
.instruction .bgImg{
width: 232px;
border: 8px solid #FFF;
border-radius: 50%;
margin-top: 8px;
opacity:;
transition: all .3s linear;
} /*覆盖层(顶层)的样式 */
.instruction .cover{
width: 232px;
height: 232px;
border-radius: 50%;
margin-top: 16px;
margin-left: 12px;
position: absolute; /*绝对定位*/
top:;
left:;
opacity:;
transition: all .3s linear; }
/*覆盖层(顶层)img的样式 */
.instruction .cover img{
width: 42px;
height: 42px;
margin-top: 20px;
}
/*覆盖层(顶层)标题的样式 */
.instruction .cover h3{
margin-top: 20px;
color: #333333;
transition: all .3s linear;
} /*覆盖层(顶层)内容div的样式 */
.instruction .cover div{
width: 220px;
margin-top: 20px;
margin-left: 12px;
font-size: 14px;
text-align: center;
transition: all .3s linear; }
/*div instruction 的鼠标浮动事件处理 */
.instruction:hover .cover{
opacity: 0.5;
background: #000;
transition: all .3s linear;
} .instruction:hover div{
color: white;
transition: all .3s linear;
} .instruction:hover h3{
color: white;
transition: all .3s linear;
} .instruction li:hover .bgImg{
opacity:;
transition: all .3s linear;
animation: img_rotate 20s linear;/*顶层图片所执行的动画,动画时长,动画执行效果 */
} /*顺时针选择动画*/
@keyframes img_rotate{
from{transform: rotateZ(0deg)}
from{transform: rotateZ(-360deg)}
}
* @keyframes 具体的使用和定义详见:http://www.w3school.com.cn/css3/css3_animation.asp。
二、翻书效果的实现
>效果图(加载可能会慢一点儿,请稍等...):

>实现思路:按照上一个例子的思路,布局好底层与覆盖层,然后给覆盖层添加Y轴的偏移角度并将其透明度置为0(全透明)。给最外层添加hover事件,事件触发的时候让覆盖层
的透明度和偏移角度发生变化。就可以实现翻书的效果。
>html代码:
<div class="show">
<a href="#">
<img src="data:images/book2.jpg" ><!-- 底层图片 -->
<p></p>
<h3>服务特别好</h3>
<div class="cover"><!-- 覆盖层 -->
<div class="content"><!-- 覆盖层内容 -->
<h4>服务特别好</h4>
<a class="by">Posted by 宜和宜美</a><br>
<a class="text" href="">总体来说这次购物还是满意的,首先我在网上下了订单,然后,体验店的人联系了我,沟通后,
他们来家里进行实地测量,跟我一起讨论风格,给我量身定制。我选了欧式风格,过程还是很顺利的,最后就是到货安装,
师傅服务好,专业性也很强,安装橱柜的时候都比较小心,防止磕碰,安装衣柜的时候也垫了地毯,总体来说还是满意的。</a>
<a href="" class="complete">查看详情
</a>
</div>
</a>
</div>
>css代码
.show {
width: 28%;
border: 2px solid #EEEEEE;
text-align: center;
position: relative;
perspective:1000px; /*设置元素被查看位置的视图*/
}
.show img{
width: 100%;
}
.show p{
display: inline-block;
width: 28px;
height: 5px;
margin-top: 20px;
}
.show h3{
color: #333333;
margin: 20px 0;
}
.show .cover{
width: 100%;
height: 100%;
margin: 0 auto;
position: absolute;
top:;
left:;
background: #EEEEEE;
text-align: center;
-webkit-transform: rotateY(-40deg) ;/*Y轴偏移负40度*/
transform-origin: left; /*偏移的起始点,默认是中间,这里改变成左边*/
opacity:;
overflow: hidden;
transition: all 1s linear;
}
.show h4{
width: 100%;
margin: 20px 0;
color: #333;
}
.show .by{
width: 80%;
margin: 0 auto;
display: block;
font-style: 14px;
color: #ccc;
text-align: left;
}
.show .content{
width: 100%;
height: 92%;
padding: 10% 0;
margin: 0 auto;
margin-top: 10%;
background: #FFF;
/*border: 2px solid #EEEEEE;*/
}
.show li:hover .cover{
opacity:;
transform: rotateY(0) ;
transition: all 1s linear;
}
.show .text{
width: 80%;
display: block;
margin: 0 auto;
text-align: center;
font-size: 14px;
}
.show .complete{
font-size: 14px;
color: #f1805f;
}
*transform: rotateY(-40deg) 的具体使用详见:http://www.w3school.com.cn/css3/css3_3dtransform.asp
*-webkit-transform: rotateX(120deg); /* webkit:为Safari 和 Chrome浏览器内核,给transform加上-webkit- 是为了让css3 transform 对每一种主流浏览器都能适配。 */
*-moz-transform: rotateX(120deg); /* moz 火狐Firefox的内核 */
[知了堂学习笔记]_css3特效第一篇--旋转的背景&翻书效果的更多相关文章
- css3特效第一篇--旋转的背景&翻书效果
一.html遮盖层与css3的旋转动画 >效果图(加载可能会慢一点儿,请稍等...): >实现思路:在一个大的div中装入一个底层img和顶层的div(里面的内容按照以上图片呈现的样式布局 ...
- [知了堂学习笔记]_css3特效第二篇--行走的线条&&置顶导航栏
一.行走的线条. 效果图(加载可能会慢一点儿,请稍等...): html代码: <div class="movingLines"> <img src=" ...
- 【知了堂学习笔记】java 自定义异常
java 常见异常种类(Java Exception): 算术异常类:ArithmeticExecption 空指针异常类:NullPointerException 类型强制转换异常:ClassCas ...
- [知了堂学习笔记]_牵线Eclipse和Tomcat第一篇 —— 配置Java环境变量&&安装eclipse
一.先给他们提供一个"浪漫的"环境,比如传说中的"鹊桥"--java环境变量.哈哈! 配置java环境变量. 下载jdk,根据自己电脑的版本和操作位数选择不同的 ...
- [知了堂学习笔记]_牵线Eclipse和Tomcat第二篇 —— 安装Tomcat&&添加Tomcat到Eclipse
来了来了~~~~~我们的"织女"--Tomcat来了,牛郎们等急了吧!哈哈! 一.安装Tomcat 下载地址:http://tomcat.apache.org/download-7 ...
- [知了堂学习笔记]_纯JS制作《飞机大战》游戏_第1讲(实现思路与游戏界面的实现)
整体效果展示: 一.实现思路 如图,这是我完成该项目的一个逻辑图,也是一个功能模块完成的顺序图. 游戏界面的完成 英雄飞机对象实现,在实现发射子弹方法过程中,又引出了子弹对象并实现.在此时,英雄飞机能 ...
- 【知了堂学习笔记】java 编写几种常见排序算法2
排序的分类: 1.直接选择排序 它的基本思想是:第一次从R[0]~R[n-1]中选取最小值,与R[0]交换,第二次从R[1]~R[n-1]中选取最小值,与R[1]交换,....,第i次从R[i-1]~ ...
- 【知了堂学习笔记】java 编写几种常见排序算法
排序的分类: 一.交换排序 所谓交换,就是根据序列中两个记录键值的比较结果来对换这两个记录在序列中的位置,交换排序的特点是:将键值较大的记录向序列的尾部移动,键值较小的记录向序列的前部移动. 1.冒泡 ...
- 【知了堂学习笔记】java 正则表达式
本文参考网络上面别人的博客知识产出 正则表达式基础 1.句号 假设你想要找出三个字母的单词,而且这些单词必须以“t”字母开头,以“n”字母结束.另外,假设有一本英文字典,你可以用正则表达式搜索它的全部 ...
随机推荐
- Python day 6(5) Python 函数式编程3
一:装饰器 1 函数对象有一个__name__属性,可以拿到函数的名字 >>> def now(): ... print('2015-3-25') ... >>> ...
- TP框架设置的LOG_LEVEL不起作用
最近监控系统日志,可是日志是全部级别的日志,没有办法看太多了.只想看有用的信息. 就在config文件中修改了配置文件.可是试了以后并没有变化,log文件还是全部级别的信息. 后来发现调试模式开启着, ...
- TurnipBit之DIY无线遥控智能小车
一.准备工作 TurnipBit 开发板 2块 TurnipBit 扩展板 1块 数据线 1条 智能小车器件 1套 电机驱动模块(L298N) 1个 在线可视化编程 点击进入 二.思路设计 2 ...
- 关于Bitcoin的分叉之路
今年对与bitcoin来讲是不平凡的一年,它经历了价格的暴涨.腰斩和再次暴涨,对于这些现象背后的利益博弈网上分析的文章很多,我就不再赘述了.我们从技术的角度上分析一下bitcoin的发展历程,同时预测 ...
- eclipse导入工程时,出现Some projects cannot be imported because they already exist in the workspace
前提条件: 1.将eclipse中现有的工程javatraining删除,如下图所示, 该复选框不要勾选,点击ok steps: 1.本次打开Eclipse想要把已删除的javatraining工程再 ...
- QTableView表格自动拉伸
QTableView有四个关于自动拉伸的函数: void resizeColumnToContents(int column); void resizeColumnsToContens(); void ...
- Virtualbox虚拟机安装与设置
Virtualbox与VMware类似,都是虚拟机软件,在win10下安装Virtualbox直接默认安装即可.版本:VirtualBox-5.2.0-118431-Win.exe 安装完成后,点击左 ...
- 【读书笔记】【深入理解ES6】#4-扩展对象的功能性
对象类别 ES6规范清晰定义了每一个类别的对象. 普通(Ordinary)对象 具有JS对象所有的默认内部行为 特异(Exotic)对象 具有某些与默认行为不符的内部行为 标准(Standard)对象 ...
- Python面试题解答
1. 一个谜题 >>> t = (1, 2, [30, 40]) >>> t[2] += [50, 60] 到底会发生下面 4 种情况中的哪一种? a. t变成(1 ...
- Erlang内存吃紧之解决思路
首先使用erlang:memory()确定是哪个部分内存吃紧,根据输出的内容,比对内存占用大小,有针对性地进行分析.在erlang系统里内存的单位为word,通过erlang:system_info( ...