常见的伪类选择器
:link :hover :active :visited

如果为以上几个伪类赋予相同css属性名,不同的css属性值

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>css测试</title>
    <style type="text/css">
            a:link { color: yellow; }
            a:hover { color: red; }
            a:active { color: pink; }
          a:visited { color: blue; }
    </style>
</head>
<body>
    <a href="http://www.baidu.com">百度一下你就知道</a>
</body>
</html>

如果按照以上的顺序给a标签的伪类赋值,第一次点击颜色展现是没有问题的,但是当点击过后,第二次再次将鼠标移到标签上面,以及点击的时刻颜色都是没有变化的,这是因为:hover:activevisited覆盖的缘故,那为什么会出现这种情况?

因为:link,:hover,:active,:visited的权重都是0,0,1,0,第一次点击的时候,visited因为还没有触发,所以颜色显示一切正常,第二次点击的时候,visited已经生效,而且他们的权重都是相等的,所以处在最后的visited伪类会将前面的几个伪类的属性值给覆盖掉。那颜色也就会一直是visited的颜色了。

此刻,我们只需将上面代码几个伪类的顺序调换一下,一切就都解决了

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>css测试</title>
    <style type="text/css">
            a:link { color: yellow; }
          a:visited { color: blue; }
            a:hover { color: red; }
            a:active { color: pink; }
    </style>
</head>
<body>
    <a href="http://www.baidu.com">百度一下你就知道</a>
</body>
</html>

因为,访问过的链接默认展示的是:visited伪类的属性值,所以不会被覆盖,而后鼠标移动到链接上,展示的是:hover伪类的属性值,而后点击展示的是:active的属性值,颜色顺序完全正确。

css伪类的展现的更多相关文章

  1. CSS伪类和伪元素

    一.伪类 CSS伪类用于向某些选择器添加特殊的效果,在W3规范中,CSS伪类有如下几个: CSS2.1 :active:向被激活的元素添加样式(激活是指点击鼠标那一下) :focus:向拥有键盘输入焦 ...

  2. CSS 伪类 (Pseudo-classes)

    CSS 伪类用于向某些选择器添加特殊的效果. CSS 伪类 (Pseudo-classes)实例: 超链接 本例演示如何向文档中的超链接添加不同的颜色. 超链接 2 本例演示如何向超链接添加其他样式. ...

  3. CSS伪类选择器

    一.CSS伪类选择器用于给某些选择器添加效果语法规则:选择器:伪选择器例:a:link {color: #FF0000} 未访问的链接 a:visited {color: #00FF00} 已访问的链 ...

  4. CSS伪类与CSS伪元素的区别及由来

    关于两者的区别,其实是很古老的问题.但是时至今日,由于各种网络误传以及一些不负责任的书籍误笔,仍然有相当多的人将伪类与伪元素混为一谈,甚至不乏很多CSS老手.早些年刚入行的时候,我自己也被深深误导,因 ...

  5. CSS 伪类

    Link The :link CSS pseudo-class lets you select links inside elements. This will select any link whi ...

  6. CSS伪类

    CSS伪类:控制元素的某种状态 语法:元素名称:伪类名称{属性:值} CSS伪类控制链接状态 状态 语法 未访问的链接 a:link{color:#ff00ff} 已访问的链接 a:visited{c ...

  7. 应用越来越广泛的css伪类

    说起css伪类,学习web前端网页设计的同学们应该对此应该不是很陌生,以前很多的网页的特效大多是通过js来实现的.但是随着CSS3不断开发,利用css实现网页的特效不仅响应不错,而且还减少了很多的代码 ...

  8. (五)CSS伪类(Pseudo-class)

    CSS伪类用于向某些选择器添加特殊的效果.伪类的语法如下: selector : pseudo-class {property: value} CSS类也可以与伪类搭配使用: selector.cla ...

  9. 关于CSS伪类选择器

    #CSS伪类选择器 ##使用css伪类选择器需要注意的 使用css的伪类选择器来选择某元素时,需要特别注意 :first-child 和 :nth-child(n) 等时, 网页渲染是从语句的后面开始 ...

随机推荐

  1. oracle or语句的坑

    SELECT SUM(tjo.pay_amount) FROM tb_jf_order tjo,tb_jf_gateway_trade_log tjg WHERE tjo.order_id = tjg ...

  2. Android 基于Android的手机邮件收发(JavaMail)之四(邮件的发送)

    上一个邮件的接受,因为不当操作,保存未完成,一切东西都得从头开始那就先从邮件发送来吧. 先下我们做一个较为简单的邮件发送 以下是源代码:相信看过上篇文章所给连接的人,对于javamail应该都有了一定 ...

  3. SQLite - TRUNCATE TABLE

    https://www.tutorialspoint.com/sqlite/sqlite_truncate_table.htm Unfortunately, no TRUNCATE TABLE in ...

  4. mac 安装jdk1.5

    前期准备 Java安装包 JDK 1.5:Java for Mac OS X 10.5 Update 10(From: Apple) 辅助工具 Pacifist:用于提取*.dmg安装包中的文件(点我 ...

  5. 突袭HTML5之SVG 2D入门1 - SVG综述////////////////zzzzzzzz

    以二次贝塞尔曲线的公式为例: js函数: //p0.p1.p2三个点,其中p0为起点,p2为终点,p1为控制点 //它们的坐标用数组表示[x,y] //t的范围是0-1 function qBerzi ...

  6. 空间不支持openssl解决办法

    windows server2003 系统 IIS6.0 ,支付宝担保交易功能不能用,提示您的空间不支持openssl 解决办法如下:1.在C:\WINDOWS 下打开php.ini 将 extens ...

  7. Onvif设备Rtsp地址解析和播放

    今天把Onvif搜索以及Rtsp流这一块的功能集成了下, 主要包含以下功能: 1. onvif设备的搜索 2. 设备rtsp地址的解析 3. Rtsp流的播放 4. 建立Rtsp流服务器, 使用vlc ...

  8. SQL Server 2008连接字符串写法大全

    一..NET Framework Data Provider for SQL Server 类型:.NET Framework类库使用:System.Data.SqlClient.SqlConnect ...

  9. 轮廓线DP POJ3254 && BZOJ 1087

    补了一发轮廓线DP,发现完全没有必要从右往左设置状态,自然一点: 5 6 7 8 9 1 2 3 4 如此设置轮廓线标号,转移的时候直接把当前j位改成0或者1就行了.注意多记录些信息对简化代码是很有帮 ...

  10. 使用django rest framework

    django 刚接触,想做一些restful api , google了一下,发现有现成的框架.Django REST framework. 对使用做下记录: 安装 从http://django-re ...