CSS3悬停效果案例应用


Posted in HTML / CSS onNovember 21, 2012

CSS3 为 Web 开发带来了非常令人兴奋的变化,特别是 CSS 3D 转换、动画等特性的支持,可以轻松的创建很酷的 Web 效果。
CSS3新增添了实现动画效果的新功能,通过本文,你可以对这些新功能有个初步了解。今天就分享一些悬停效果,可以更好的帮助你开发
CSS3悬停效果案例应用 
HTML标记
这个简单的结构使我们能够使这些效果。正如你可以看到下面的代码中我们创建了一个父类视图,里面的内容。然后,我们创建一个类的面具,我们将了CSS3过渡到悬停效果。在后面的例子中,这个语法可以稍稍发生变化,这取决于你想要的效果应用。

复制代码
代码如下:

<div class="view">
<img src="images/1.jpg" />
<div class="mask"></div>
<div class="content">
<a href="#" class="info" title="Full Image">Full Image</a>
</div>
</div>

CSS
在这里,你将我们的教程设置的基本属性。对于每一个效果会有不同的CSS文件,你可以把到一个CSS文件中的各种效果。
复制代码
代码如下:

.view {
width: 300px;
height: 200px;
margin: 10px;
float: left;
border: 5px solid #fff;
overflow: hidden;
position: relative;
text-align: center;
box-shadow: 0px 0px 5px #aaa;
cursor: default;
}
.view .mask, .view .content {
width: 300px;
height: 200px;
position: absolute;
overflow: hidden;
top: 0;
left: 0;
}
.view img {
display: block;
position: relative;
}
.view a.info {
background:url(../img/link.png) center no-repeat;
display: inline-block;
text-decoration: none;
padding:0;
text-indent:-9999px;
width:20px;
height:20px;
}

1 Example
CSS3悬停效果案例应用 
HTML
对具有这种效果的类视图的元素添加特殊类效果。这里在view类的基础上添加effect类
复制代码
代码如下:

<div class="view effect">
<img src="images/1.jpg" />
<div class="mask"></div>
<div class="content">
<a href="#" class="info" title="Full Image">Full Image</a>
</div>
</div>

CSS
这里除了使用的边框属性来创建一个三角形,我使用的多个转换,允许我在动画期间对每个属性有更多的控制。
复制代码
代码如下:

effect img {
opacity:1;
transform:scale(1,1);
transition: all 0.2s ease-in;
}
.effect .mask {
opacity:0;
overflow:visible;
border-color:rgba(0,0,0,0.7) transparent transparent transparent;
border-style:solid;
border-width:150px;
width:0;
height:0;
transform:translateY(-125px);
transition: transform 0.2s 0.1s ease-out, opacity 0.3s ease-in-out;
}
.effect a.info {
opacity:0;
transform:translateY(-125px);
transition: transform 0.3s ease-in, opacity 0.1s ease-in-out;
}
.effect:hover img {
opacity:0.7;
transform:scale(2,2);
}
.effect:hover .mask {
opacity: 1;
transform: translateY(0px);
}
.effect:hover a.info {
opacity:1;
transform:translateY(100px);
}

2 Example
CSS3悬停效果案例应用 
HTML
在此示例中的语法会稍有不同
复制代码
代码如下:

<div class="view second-effect">
<img src="images/2.jpg" />
<div class="mask">
<a href="#" class="info" title="Full Image">Full Image</a>
</div>
</div>

CSS
在这个例子当中使用边框熟悉对变量进行调整. 这里使用 box-sizing. box-sizing 熟悉被用来改变默认的CSS盒宽度和高度大小,具体怎么使用呢,我简单解释一下
(说到 IE 的 bug,在 IE6以前的版本中,IE对盒模型的解析出现一些问题,跟其它浏览器不同,将 border 与 padding 都包含在 width 之内。而另外一些浏览器则与它相反,是不包括border和padding的。box-sizing:content-box:当我们设置 box-sizing: content-box; 时,浏览器对盒模型的解释遵从我们之前认识到的 W3C 标准,当它定义width和height时,它的宽度不包括border和padding。box-sizing:border-box:当我们设置box-sizing: border-box; 时,浏览器对盒模型的解释与 IE6之前的版本相同,当它定义width和height时,border和padding则是被包含在宽高之内的。内容的宽和高可以通过定义的 “width”和 “height”减去相应方向的“padding”和“border”的宽度得到。内容的宽和高必须保证不能为负,必要时将自动增大该元素border box的尺寸以使其内容的宽或高最小为0。
复制代码
代码如下:

.second-effect .mask {
opacity: 0;
overflow:visible;
border:0px solid rgba(0,0,0,0.7);
box-sizing:border-box;
transition: all 0.4s ease-in-out;
}
.second-effect a.info {
position:relative;
top:-10px;
opacity:0;
transform:scale(0,0);
transition: transform 0.2s 0.1s ease-in, opacity 0.1s ease-in-out;
}
.second-effect:hover .mask {
opacity: 1;
border:100px solid rgba(0,0,0,0.7);
}
.second-effect:hover a.info {
opacity:1;
transform:scale(1,1);
transition-delay:0.3s;
}

3 Example
CSS3悬停效果案例应用 
HTML
这里在view类的基础上添加third-effect类.
复制代码
代码如下:

<div class="view third-effect">
<img src="images/3.jpg" />
<div class="mask">
<a href="#" class="info" title="Full Image">Full Image</a>
</div>
</div>

CSS
使用边框属性只需要简单的几行代码就能得到非常棒的效果.
复制代码
代码如下:

.third-effect .mask {
opacity: 0;
overflow:visible;
border:100px solid rgba(0,0,0,0.7);
box-sizing:border-box;
transition: all 0.4s ease-in-out;
}
.third-effect a.info {
position:relative;
top:-10px; /* Center the link */
opacity: 0;
transition: opacity 0.5s 0s ease-in-out;
}
.third-effect:hover .mask {
opacity: 1;
border:100px solid rgba(0,0,0,0.7);
}
.third-effect:hover a.info {
opacity:1;
transition-delay: 0.3s;
}

4 Example
CSS3悬停效果案例应用 
HTML
在此示例中的代码是比之前的明显减少,但做出来的悬停效果将是非常令人印象深刻的.
1 <div class="view fourth-effect">
2 <a href="#" title="Full Image"><img src="images/4.jpg" /></a>
3 <div class="mask"></div>
4 </div>
CSS
仅使用mask类与border-radius属性结合打造出一个美丽的悬停效果,单击图片实现图片的可见性
复制代码
代码如下:

.fourth-effect .mask {
position:absolute; /* Center the mask */
top:50px;
left:100px;
cursor:pointer;
border-radius: 50px;
border-width: 50px;
display: inline-block;
height: 100px;
width: 100px;
border: 50px solid rgba(0, 0, 0, 0.7);
box-sizing:border-box;
opacity:1;
visibility:visible;
transform:scale(4);
transition:all 0.3s ease-in-out;
}
.fourth-effect:hover .mask {
opacity: 0;
border:0px solid rgba(0,0,0,0.7);
visibility:hidden;
}

5 Example
CSS3悬停效果案例应用 
HTML
最后一个例子是上面几个例子的结合.添加一个fifth-effect类
1 <div class="view fifth-effect">
2 <a href="#" title="Full Image"><img src="images/5.jpg" /></a>
3 <div class="mask"></div>
4 </div>
<div class="view fifth-effect">
<a href="#" title="Full Image"><img src="images/5.jpg" /></a>
<div class="mask"></div>
</div>
CSS
在这里使用边框属性的rgba属性。来改变可见图片的透明度.
复制代码
代码如下:

.fifth-effect img {
opacity:0.2;
transition: all 0.3s ease-in;
}
.fifth-effect .mask {
cursor:pointer;
opacity:1;
visibility:visible;
border:100px solid rgba(0,0,0,0.7);
box-sizing:border-box;
transition: all 0.4s cubic-bezier(0.940, 0.850, 0.100, 0.620);
}
.fifth-effect:hover .mask {
border:0px double rgba(0,0,0,0.7);
opacity:0;
visibility:hidden;
}
.fifth-effect:hover img {
opacity:1;
}
HTML / CSS 相关文章推荐
css3和jquery实现的可折叠导航菜单适合放在手机网页的导航菜单
Sep 02 HTML / CSS
纯css3实现宠物小鸡实例代码
Oct 08 HTML / CSS
浅谈CSS3 box-sizing 属性 有趣的盒模型
Apr 02 HTML / CSS
HTML5 Canvas API中drawImage()方法的使用实例
Mar 25 HTML / CSS
详解Canvas 实现炫丽的粒子运动效果(粒子生成文字)
Feb 01 HTML / CSS
HTML5中判断用户是否正在浏览页面的方法
May 03 HTML / CSS
HTML5+CSS3模仿优酷视频截图功能示例
Jan 05 HTML / CSS
HTML5操作WebSQL数据库的实例代码
Aug 26 HTML / CSS
Html5页面中的返回实现的方法
Feb 26 HTML / CSS
h5使用canvas画布实现手势解锁
Jan 04 HTML / CSS
amazeui 验证按钮扩展的实现
Aug 21 HTML / CSS
关于CSS浮动与取消浮动的问题
Jun 28 HTML / CSS
在css3中background-clip属性与background-origin属性的用法介绍
Nov 13 #HTML / CSS
CSS3基础(RGBa、text-shadow、box-shadow、border-radius)
Nov 13 #HTML / CSS
css3绘制天猫logo实现代码
Nov 06 #HTML / CSS
CSS3实现DIV圆角效果完整代码
Oct 10 #HTML / CSS
10 套华丽的CSS3 按钮小结
Oct 03 #HTML / CSS
25个CSS3动画按钮和菜单教程分享
Oct 03 #HTML / CSS
收集的22款给力的HTML5和CSS3帮助工具
Sep 14 #HTML / CSS
You might like
收音机鉴频器对声音的影响和频偏分析
2021/03/02 无线电
php的计数器程序
2006/10/09 PHP
php数组函数序列之in_array() 查找数组值是否存在
2011/10/29 PHP
用PHP实现小写金额转换大写金额的代码(精确到分)
2012/01/10 PHP
Linux php 中文乱码的快速解决方法
2016/05/13 PHP
详解PHP字符串替换str_replace()函数四种用法
2017/10/13 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
PHP中引用类型和值类型功能与用法示例
2019/02/26 PHP
javascript 进阶篇2 CSS XML学习
2012/03/14 Javascript
JQuery触发事件例如click
2013/09/11 Javascript
如何用JavaScript定义一个类
2014/09/12 Javascript
jQuery 中DOM 操作详解
2015/01/13 Javascript
Jquery常用的方法汇总
2015/09/01 Javascript
jquery捕捉回车键及获取checkbox值与异步请求的方法
2015/12/24 Javascript
JavaScript电子时钟倒计时
2016/01/09 Javascript
JS获取一个未知DIV高度的方法
2016/08/09 Javascript
简单的jQuery拖拽排序效果的实现(增强动态)
2017/02/09 Javascript
微信JSSDK调用微信扫一扫功能的方法
2017/07/25 Javascript
vue jsx 使用指南及vue.js 使用jsx语法的方法
2017/11/11 Javascript
jQuery+CSS实现的标签页效果示例【测试可用】
2018/08/14 jQuery
解决vue js IOS H5focus无法自动弹出键盘的问题
2018/08/30 Javascript
vue项目中运用webpack动态配置打包多种环境域名的方法
2019/06/24 Javascript
详解vue-template-admin三级路由无法缓存的解决方案
2020/03/10 Javascript
分享15个最受欢迎的Python开源框架
2014/07/13 Python
django2+uwsgi+nginx上线部署到服务器Ubuntu16.04
2018/06/26 Python
python 使用pandas计算累积求和的方法
2019/02/08 Python
python+openCV调用摄像头拍摄和处理图片的实现
2019/08/06 Python
Python 词典(Dict) 加载与保存示例
2019/12/06 Python
django框架cookie和session用法实例详解
2019/12/10 Python
html5+css3气泡组件的实现
2014/11/21 HTML / CSS
企业安全标语
2014/06/07 职场文书
pytorch 如何使用float64训练
2021/05/24 Python
Python 中的单分派泛函数你真的了解吗
2021/06/22 Python
vue实现可以快进后退的跑马灯组件
2022/04/08 Vue.js
Mysql 数据库中的 redo log 和 binlog 写入策略
2022/04/26 MySQL
Hive日期格式转换方法总结
2022/06/25 数据库