<a>链接的四个伪类顺序

摘自: http://www.cnblogs.com/xiayi/p/5350423.html

 <a>元素的作用是可以创建一个链接,链接对应4个状态:未访问,已访问,鼠标悬停,鼠标点击瞬间。

  为了给链接的4个状态应用样式,引入伪类的概念。

  什么是伪类呢?简单点说,就是你没定义这个类,但它确实作为一个类来使用。(这些类确实存在,浏览器在后台会向这些类增加和删除元素)

  我在看《CSS设计指南》时,它说到四个伪类的书写顺序一定要正确,否则浏览器可能不会显示预期的结果。

  也即这样写:

a:link{color:black;}
a:visited{color:gray;}
a:hover{color:red;}
a:active{color:blue;}

  为什么必须得按顺序呢?

  这个问题可以这样来解答。

  首先注意关键的两点:1.这4个伪类特指度相同。2.一个链接可能同时处于多种状态,即同时属于多个伪类。

  好,现在来详细剖析。

  未点击链接前,link伪类长期处于激活状态,鼠标悬停(或点击)时,<a>链接同时处于link和hover(或active)状态,由于它们特指度相同,在同时激活的情况下,后出现的伪类样式会覆盖前面的伪类样式,故link状态必须写在hover(或active)之前。

  再讨论hover和active的顺序,若把hover放在active后面,当点击链接一瞬,实际你在激活active状态的同时触发了hover伪类,hover在后面覆盖了active的颜色,所以无法看到active的颜色。故hover在active之前

  其次,若把visited放在hover后面,那已访问过的链接一直触发着visited伪类,会覆盖hover样式。

  最后,其实link、visited两个伪类之间顺序无所谓。(因为它俩不可能同时触发,即又未访问同时又已访问。)

  记这顺序有个小招数,“LoVe? HA!”。

时间: 2024-08-25 09:40:50

<a>链接的四个伪类顺序的相关文章

关于超链接的四个伪类的一个问题(顺序问题)

在使用超链接的伪类的时候,要使用如下顺序,否则其中的某些效果将会没有效果[注释:link和visited的顺序无所谓]a:link               设置a对象在未被访问前的样式表属性.a:visited    设置a对象在其链接地址已被访问过时的样式表属性. a:hover    设置对象在其鼠标悬停时的样式表属性. a:active    设置对象在被用户激活(在鼠标点击与释放之间发生的事件)时的样式表属性. 原因是:浏览器解释CSS时遵循的“就近原则”. 当几种情况冲突的时候,哪

a标签的四个伪类

A标签的css样式 CSS为一些特殊效果准备了特定的工具,我们称之为“伪类”.其中有几项是我们经常用到的,下面我们就详细介绍一下经常用于定义链接样式的四个伪类,它们分别是: :link    :visited    :hover    :active 因为我们要定义链接样式,所以其中必不可少的就是超级链接中的锚标签--a,锚标签和伪类链接起来书写的方法就是定义链接样式的基础方法,它们的写法如下: a:link,定义正常链接的样式:    a:visited,定义已访问过链接的样式:    a:h

a 标签的四个伪类

link        有链接属性时visited    链接地址已被访问过active     被用户激活(在鼠标点击与释放之间发生的事件)hover      其鼠标悬停 <!DOCTYPE HTML><html>  <head>  <title>a标签的四个伪类</title>  <meta charset="utf-8">  <meta name="Keywords" conten

a标签伪类顺序以及jQuery选择器

Q:a标签伪类的顺序? A:顺序应该是: :link :visited :hover :avtice 原因:link和visited是a标签的常态属性,hover和active是a标签的即时状态. Q:jQuery选择器?如何准确快速的选择出想要的元素? A: 在用jQuery的时候,一个很重要的用法,就是要快速选择出自己想要的元素.把常用的选择记录下来: 基本选择器 ID选择器 $("#id").css("width","120px"); Cl

a标签的四个伪类是什么?如何排序?为什么?

爱恨分明原则: l v h a 注释:为了产生预期的效果,在 CSS 定义中,a:hover 必须位于 a:link 和 a:visited 之后 ! 注释:为了产生预期的效果,在 CSS 定义中,a:active 必须位于 a:hover 之后!! 注释:Pseudo-class(伪类)的名称对大小写不敏感. 注释:伪类可与 CSS 类配合使用

a:link a:visited a:hover a:active四种伪类选择器的区别

a:link选择网页中所有没有被visited的a标签(就是没有鼠标悬停hover或者点击click) a:visited选择网页中所有已经被click的a链接,用来告诉用户这个链接已经被你访问过了 a:hover,说实话这个我用的最多,其实就是选择有鼠标悬停的a链接 a:active,顾名思义active就是活动的意思,表示的是选择用户点击并且还没有放开时(其实就是按住)的a链接 当然还有其他的譬如a:focus,这个表示选择光标(焦点)落下的a链接.

a 伪类顺序,background

1 a:link; a:hover; a:active; a:visited ==> a:link; a:visited; a:hover; a:active 有连接的A(正常),鼠标移上悬停B(高亮),点击激活鼠标抬起之间C(灰态),已经访问过的A(正常) 2 background : background-color || background-image || background-repeat || background-attachment || background-position

a标签伪类的书写顺序

L(link)OV(visited)e-H(hover)A(active)te 简单的介绍一下A 标签的4个伪类:    1. ':link' :适用于未被访问的链接:    2. ':visited' :适用于已经访问过的链接:    3. ':hover' :在可视化客服端上,适用于光标(鼠标指针)指向一个元素,但还未激活它时:    4. ':active' :适用于一个元素被用户激活时. W3C制定的CSS21规范中指出:这四个伪类的声明顺序应该是:':link'.':visited'.

css 伪类

CSS为一些特殊效果准备了特定的工具,我们称之为“伪类”.其中有几项是我们经常用到的,下面我们就详细介绍一下经常用于定义链接样式的四个伪类,它们分别是: 1 :link 2 :visited 3 :hover 4 :active 因为我们要定义链接样式,所以其中必不可少的就是超级链接中的锚标签--a,锚标签和伪类链接起来书写的方法就是定义链接样式的基础方法,它们的写法如下: 1 a:link,定义正常链接的样式: 2 a:visited,定义已访问过链接的样式: 3 a:hover,定义鼠标悬浮