html5网站中css3中currentColor使用方法
html5网站中css3中有个新的关键词currentColor,currentColor表示“当前的标签所继承的文字颜色”,例如: img[src$=’mm1.jpg’] { border: 1em solid currentColor; } 就表示图边边框的着色为所处标签节点的文字色,并且这个色可以根据文字色的变化面自动变化。由于是CSS3新增关键字,需要IE9+以及其他现代浏览器才有效果。 换种方式表示就是:currentColor = color的值
这种设计的目的就是鼠标hover时候,图标可以跟着文字一起变色。如果不考虑兼容性问题,我们可以稍稍改造下,使其实现更加简单:
.icon {
display: inline-block;
width: 16px; height: 20px;
background-image: url(../201307/sprite_icons.png);
background-color: currentColor; /* 该颜色控制图标的颜色 */
}
于是,我们想要鼠标hover文字链接,其图标颜色要跟着一起变化,只要改变文字颜色就可以了:
.link:hover { color: #333; }/* 虽然改变的是文字颜色,但是图标颜色也一起变化了 */
HTML结构如下:
<a href="##"><i></i>返回</a>
于是鼠标hover就是#333颜色图文合体变化: