先拿淘宝看这样的例子:
正常状态:
下拉后状态:
淘宝这个三角是用s标签实现的。我一同事试图使用a,a:hover来模拟还原这个效果,同时我也写了个代码如下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="author" content="tofishes@163.com" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<style type="text/css">
a span { display:inline-block; border:0 solid #fff; border-width:5px 5px 0; border-color:#090 #fff ;width:0; overflow:hidden;height:0; }
a:hover span { border-width:0 5px 6px; }
</style>
</head>
<body>
<p>
<a href="">右侧有个小三角,鼠标悬浮会改变<span></span></a>
</p>
</body>
</html>
原理很简单,利用0高0宽的元素再配以不同宽度不同色彩的边框实现一个三角形。
这段代码在FF等标准浏览器下是没有问题的,但是在IE6下会发现鼠标悬浮过去没有效果,当鼠标左键按下去时才出现意料中的效果。当时同事问我,我也没试出怎么回事。今天写html时候,心血来潮就又试了一下。结果被偶发现一个解决之道:
只要在定义a:hover span 样式之前加上一个a:hover { border:0;/*或none*/ } ;
神奇的效果出现了,IE6正常了(在未知的时候原谅偶用神奇来描述)。
这两者一下子真是想不出来有啥子关系。。。奇怪的IE,先截止到目前为止吧。
扩展:除了border,貌似background也有此问题。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="author" content="tofishes@163.com" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<style type="text/css">
a span { display:inline-block; height:30px; background:#ccc;}
a:hover span { background:#f60; }
</style>
</head>
<body>
<p>
<a href=""><span>看看背景会不会变化</span></a>
</p>
</body>
</html>
是的,背景也没有变化,甚至鼠标点下也没有变化。同样解决之道就是定义:
a:hover { background: transparent; }/*为了减少影响使用集成父背景 */
还有没有其他属性呢?值的发掘。
- 大小: 935 Bytes
- 大小: 1.8 KB
分享到:
相关推荐
纯CSS控制实现的拉菜单效果,反复删改,只留下了核心代码,在最大程度上为需要的人留下了空间
css实现下拉菜单,鼠标移动到上面就可以显示下面的子菜单
纯CSS写带边框的三角形
兼容ie6、ie7、ie8、ie9、Chrome、Firefox等主流浏览器,轻量简洁容易上手使用,是web开发、学习的必备之选。
两款纯css3实现的动画菜单
一个纯css实现的下拉菜单,效果还不错,希望给大家一些参考
纯CSS的下拉菜单 支持IE6,IE7,Firefox
纯css实现的下拉菜单 使用纯css技术实现的下拉菜单 代码简洁易懂 具有启发性 不含任何js脚本
纯CSS实现的下拉导航三级菜单,纯CSS实现的下拉导航三级菜单
纯css下拉菜单兼容主流浏览器IE6+
纯CSS多级下拉菜单,
用css实现边框流动光线效果.........................................................................................
纯css下拉菜单效果,只要css和div就能实现菜单的下拉效果
纯css的导航下拉菜单 纯css的导航下拉菜单 纯css的导航下拉菜单
纯CSS下拉菜单 不需要JS 效果不错! 从某外国网站上直接弄下来的!
今天我们要分享的是一款基于纯CSS的建议下拉菜单,它的特点是外观非常简洁,但是由于每一个菜单项都有一条不同颜色的边框,所以看起来也非常漂亮。同时这款菜单可以默认展开菜单项,也可以点击按钮后展开,使用起来...
纯css实现水平下拉导航菜单是一款css导航菜单制作下拉三级菜单代码下载。
今天我们要来分享一款比较简单清新的CSS3下拉菜单,这款下拉菜单是垂直方向的,点击主菜单项可以展开和折叠子菜单,在展开折叠的过程中伴随着淡入淡出的动画效果。另外这款CSS3垂直下拉菜单的色彩可以自己配置,是...
这是一款纯CSS大型下拉菜单。该大型菜单使用HTML和纯CSS代码制作,没有任何js代码。适合用于栏目分类较多的网站使用。
css3箭头菜单效果