html中a标签css属性a:link_a:visited_a:hover_a:active用法详解
一、基本介绍
1、a:link:连接平常的状态
2、a:visited:连接被访问过之后
3、a:hover:鼠标放到连接上的时候
4、a:active:连接被按下的时候
一、a:link
a:link版本:CSS1 兼容性:IE4 NS4
语法:Selector : link { sRules }
说明:设置a对象在未被访问前的样式表属性、IE3将:link伪类的样式表属性作用于visited伪类、默认值由浏览器决定、对于无href属性(特性)的a对象、此伪类不发生作用
二、a:visited
a:visited版本:CSS1 兼容性:IE4 NS4
语法:Selector : visited { sRules }
说明:设置a对象在其链接地址已被访问过时的样式表属性、IE3将:link伪类的样式表属性作用于visited伪类、默认值由浏览器决定、定义网页过期时间或用户清空历史记录将影响此伪类的作用、对于无href属性(特性)的a对象、此伪类不发生作用
三、a:hover
a:hover版本:CSS1/CSS2 兼容性:IE4 NS4
语法:Selector : hover { sRules }
说明:设置对象在其鼠标悬停时的样式表属性、在CSS1中此伪类仅可用于a对象、且对于无href属性(特性)的a对象、此伪类不发生作用、在CSS2中此伪类可以应用于任何对象、目前IE5.5 仅支持CSS1中的:hover
四、a:active
a:active版本:CSS1/CSS2 兼容性:IE4
语法:Selector : active { sRules }
说明:设置对象在被用户激活(在鼠标点击与释放之间发生的事件)时的样式表属性、在CSS1中此伪类仅可用于a对象、且对于无href属性(特性)的a对象、此伪类不发生作用、在CSS2中此伪类可以应用于任何对象、并且:active状态可以和:link以及:visited状态同时发生、目前IE5.5 仅支持CSS1中的:active
五、a:hover和a:visited书写顺序的重要性
今天在用a:hover属性的时候发现一个奇怪的问题、同一个页面里面有些链接的a:hover效果不能正常表现出来、链接的代码是一样、没有使用其它样式固定、搞的我莫名其妙、还以为是某个标签没有关闭、但是页面比较长、检查起来又嫌累、但是想来想去找不到其它原因、索性把浏览器一关、做别的事情去了
重新打开这个页面的时候、突然发现那个链接的a:hover效果又出来了、我想了一下、点了那个链接、然后回过头再点、果然又没了、连忙检查css文档、发现a:hover属性写在了visited之前、改写到之后、重试、ok
以前看书的时候注意到css中关于链接表现的书写有提示说各属性顺序不能颠倒、一直没有注意、写的时候通常都很随意、现在看来不能这个顺序还是很重要的、css中关于超链接的四个属性一般正常顺序为:link、visited、hover、active、即:a:link、a:visited、a:hover、a:active