- 浏览: 155891 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (137)
- JavaScript (23)
- get post (0)
- SSH (4)
- Hibernate (1)
- cmd (2)
- 火狐 IE (1)
- 中英文环境模板下载 (1)
- 日期 (0)
- 其他总结 (5)
- 正则校验 (3)
- Sql Server (0)
- FreeMarker (1)
- 继承 (1)
- SQL (2)
- ORACLE -- SQL Server -- Access 常见Sql语句的区别 (1)
- ORACLE -- SQL Server -- Access 常见Sql语句的区别 (0)
- 解决int和Integer不能互转 (0)
- 原子类 (1)
- Final,finally,finalize的区别 (1)
- Web前端 (12)
- Reader InputStream (1)
- 线程 (1)
- JDBC (1)
- AJAX (3)
- Linux (2)
- 素数 (1)
- 接口-----继承 (1)
- 数据库查询性能优化 (1)
- Spring MVC3 深入了解 (1)
- JS (18)
- log4j简介 (1)
- Java序列化的机制和原理 (0)
- allowTransparency属性 (1)
- 测试类 (1)
- CSS (14)
- JQuery (10)
- 多线程 (1)
- 数据库 (2)
- Spring 注解 (1)
- JSTL标签库 (1)
- HTML (8)
- 界面设计 (4)
- 测试 (4)
- 职业生涯 (1)
- 数据可视化 (1)
- UI设计 (3)
- eclipse怎样生成javadoc (2)
- redis memcache 比较 (1)
- Windows 8系统IE10无法安装Flash Player插件的解决办法 (1)
- IE7 问题 (1)
- 常用JS验证 (1)
- Hadoop,MapReduce学习步骤 (1)
- 开始-运行-命令大全 (1)
- jQuery与ExtJS优缺点比较 (1)
- Oracle (1)
- 文档转换 (1)
- Maven与Ant比较 (1)
最新评论
-
谁说我不是会员:
很给力的文章,通俗易懂
Get请求和Post请求的区别 -
Spirit_eye:
请问一个图片按钮怎么置灰
按钮置灰跟按钮不显示
http://blog.snsgou.com/post-2.html
在CSS中定义a:link、a:visited、a:hover、a:active顺序
以前用CSS一直没有遇到过这个问题,在最近给一个本科同学做的项目里面。出现一些问题,搜索引擎查了一些网站和资料,发现很多人问到这个问题,给出的结果我试了试,大部分都不正确。
给出我试的顺序,可能会对大家有一些帮助:
今天看到一位匿名朋友的问题,又去查了一些资料,这个人讲的非常透彻:引自灵眸●第一炉沉香博客
a :link、a:hover、a:visited这几个元素,定义CSS时候的顺序不同,也会直接导致链接显示的效果不同。
我想,原因就在于浏览器解释CSS时遵循的“就近原则”。
举例来说:
我想让未访问链接颜色为蓝色,活动链接为绿色,已访问链接为红色:
第一种情况:我定义的顺序是a:visited、a:hover、a:link,这时会发现:把鼠标放到未访问过的蓝色链接上时,它并不变成绿色,只有放在已访问的红色链接上,链接才会变绿。
第二种情况:我把CSS定义顺序调整为:a:link、a:visited、a:hover,这时,无论你鼠标经过的链接有没有被访问过,它都会变成绿色啦。
这是因为,一个鼠标经过的未访问链接同时拥有a:link、a:hover两种属性,在第一种情况下,a:link离它最近,所以它优先满足a:link,而放弃a:hover的重复定义。
在第二种情况,无论链接有没有被访问过,它首先要检查是否符合a:hover的标准(即是否有鼠标经过它),满足,则变成绿色,不满足,则继续向上查找,一直找到满足条件的定义为止。
一句话:在CSS中,如果对于相同元素有针对不同条件的定义,宜将最一般的条件放在最上面,并依次向下,保证最下面的是最特殊的条件。这样,浏览器在显示元素时,才会从特殊到一般、逐级向上验证条件,才会使你的每一个CSS语句都起到效果。
当然,如果故意打乱顺序,也会造成一些特殊的效果。比如,可以为链接制造出下划线颜色与文字颜色的差异。
近日突然发现,原来这个CSS问题早已有高人提出啦。还是个老外呢。他给总结了一个便于记忆的“爱恨原则”(LoVe/HAte),即四种伪类的首字母:LVHA。
再重复一遍正确的顺序:a:link、a:visited、a:hover、a:active
在CSS中定义a:link、a:visited、a:hover、a:active顺序
以前用CSS一直没有遇到过这个问题,在最近给一个本科同学做的项目里面。出现一些问题,搜索引擎查了一些网站和资料,发现很多人问到这个问题,给出的结果我试了试,大部分都不正确。
给出我试的顺序,可能会对大家有一些帮助:
代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->A:link { color: #000000; TEXT-DECORATION: none } A:visited { COLOR: #000000; TEXT-DECORATION: none } A:hover { COLOR: #ff7f24; text-decoration: underline; } A:active { COLOR: #ff7f24; text-decoration: underline; }
今天看到一位匿名朋友的问题,又去查了一些资料,这个人讲的非常透彻:引自灵眸●第一炉沉香博客
a :link、a:hover、a:visited这几个元素,定义CSS时候的顺序不同,也会直接导致链接显示的效果不同。
我想,原因就在于浏览器解释CSS时遵循的“就近原则”。
举例来说:
我想让未访问链接颜色为蓝色,活动链接为绿色,已访问链接为红色:
第一种情况:我定义的顺序是a:visited、a:hover、a:link,这时会发现:把鼠标放到未访问过的蓝色链接上时,它并不变成绿色,只有放在已访问的红色链接上,链接才会变绿。
第二种情况:我把CSS定义顺序调整为:a:link、a:visited、a:hover,这时,无论你鼠标经过的链接有没有被访问过,它都会变成绿色啦。
这是因为,一个鼠标经过的未访问链接同时拥有a:link、a:hover两种属性,在第一种情况下,a:link离它最近,所以它优先满足a:link,而放弃a:hover的重复定义。
在第二种情况,无论链接有没有被访问过,它首先要检查是否符合a:hover的标准(即是否有鼠标经过它),满足,则变成绿色,不满足,则继续向上查找,一直找到满足条件的定义为止。
一句话:在CSS中,如果对于相同元素有针对不同条件的定义,宜将最一般的条件放在最上面,并依次向下,保证最下面的是最特殊的条件。这样,浏览器在显示元素时,才会从特殊到一般、逐级向上验证条件,才会使你的每一个CSS语句都起到效果。
当然,如果故意打乱顺序,也会造成一些特殊的效果。比如,可以为链接制造出下划线颜色与文字颜色的差异。
近日突然发现,原来这个CSS问题早已有高人提出啦。还是个老外呢。他给总结了一个便于记忆的“爱恨原则”(LoVe/HAte),即四种伪类的首字母:LVHA。
再重复一遍正确的顺序:a:link、a:visited、a:hover、a:active
发表评论
-
<meta name="viewport" content="width=device-width, initial-scale=1.0">
2014-05-06 11:07 356<meta name="viewport&qu ... -
web前端页面性能优化
2014-05-05 14:23 602web前端页面性能优化 ... -
提高网站打开速度的7大秘籍
2014-04-25 11:11 556提高网站打开速度的7大秘籍 http://lusongs ... -
PNG8和PNG24的区别
2014-04-25 10:35 1061PNG8和PNG24的区别 内容图片的大小的优化,告诉大 ... -
web前端页面性能优化小结
2014-04-25 10:21 642web前端页面性能优化小 ... -
LABjs、RequireJS、SeaJS 哪个最好用?为什么?
2014-03-14 11:15 595LABjs、RequireJS、SeaJS 哪 ... -
网站重构
2013-12-27 15:20 539网站重构 前不久听到 ... -
通过css zoom缩放,兼容Firefox
2013-11-15 15:12 1763通过css zoom缩放,兼容Firefox IE浏览器和 ... -
Html 5中自定义data-*特性
2013-11-13 15:19 542Html 5中自定义data-*特性 Html 5中支持用户 ... -
CSS布局-强大的负边距
2013-11-04 16:20 650http://www.cnblogs.com/2050/arc ... -
如何让表头th不滚动
2013-10-31 12:05 5705表格带滚动条 如何让表头th不滚动 <div ... -
CSS Sticky Footer: 完美的CSS绝对底部
2013-09-04 17:42 657CSS Sticky Footer: 完美的CSS绝对底部 ... -
流体布局
2013-09-04 11:53 689流体布局 在我的另一篇文章《弹性+固宽布局》http://li ... -
《弹性+固宽布局》
2013-09-04 11:32 730《弹性+固宽布局》 在 ... -
border 写的小三角
2013-05-28 14:31 719border 写的小三角 <!DOCTY ... -
IE HACK
2013-05-07 18:50 728IE HACK http://blog.163.com/ ... -
解决IE6的CSS背景闪烁问题
2013-05-07 18:20 1034解决IE6的CSS背景闪烁问题 http://www.kea ... -
CSS定位
2013-05-07 16:42 642CSS定位 http://baike.baidu.com/v ... -
clear:both;与 overflow:hidden;
2013-04-27 16:06 762clear:both;与 overflow:hidden; ... -
inline-block的使用及bug
2013-04-17 11:38 688inline-block的使用及bug http://ww ...
相关推荐
了解了各个伪类选择器的作用后,我们来探讨为什么CSS规则中a:link、a:visited、a:hover、a:active的顺序必须是LVHA。 1. 浏览器解析CSS的“就近原则” 浏览器在解析CSS规则时会遵循“就近原则”,即最后定义的样式...
link、visited、hover、active 未移入a标签链接时:link 移入a标签链接时:link、hover 点击a标签链接时:link、hober、active 点击后未移入a标签连接时:link、visited 点击后移入a标签连接时:link、visited...
css设置超链接样式是通过伪类来实现的 (1) :link:设置a对象在未被访问前的样式表属性。 (2) :visited:设置a对象在其链接...伪类名字对大小写不敏感,但在定义顺序上有要求。:hover必须被置于:link和:visited之后才
这种组合使用称为“链路状态顺序”或“LVHA 规则”,即 Link - Visited - Hover - Active。例如: ```css a { color: inherit; text-decoration: none; } a:link, a:visited { color: blue; } a:hover { color...
在CSS中,这四个伪类的状态顺序至关重要,因为它们遵循特定的流程:`a:link -> a:hover -> a:active -> a:visited`。这意味着,当链接状态从一个过渡到另一个时,必须按照这个顺序来定义样式。例如,用户首先看到的...
a标签样式 一组专门的预定义的类称为伪类,主要用来处理超链接的状态。...③ a:active:激活时(链接获得焦点时)链接的颜色 ,如 .mycls a:active{color:blue} ④ a:hover:鼠标移到链接上时 ,如 .m
在探讨如何轻松运用HTML中的`<a>`标签时,我们首先必须熟悉其四种核心状态:`a:link`、`a:visited`、`a:hover`和`a:active`。这些状态不仅定义了链接在不同交互时刻的表现,还涉及到CSS伪类的选择与应用。下面我们将...
在CSS中,a标签代表超链接,它具有四种不同的伪类状态,这些状态分别对应于链接的不同交互阶段,形成了一个特殊的状态顺序,即所谓的LVHA顺序:Link(未访问状态)、Visited(已访问状态)、Hover(鼠标悬停状态)、...
重要的是要遵循CSS中定义这四个状态的特定顺序:`link` -> `visited` -> `hover` -> `active`。这是因为在解析CSS时,浏览器会按照这个顺序应用样式,如果顺序错误,可能会影响样式的表现。例如,如果将`a:visited`...
在Dreamweaver CS6中,通过CSS定义链接样式可以让网页中的超链接拥有独特的视觉效果,提升用户体验。下面我们将详细讨论如何在Dreamweaver CS6中使用CSS定义链接的四种伪类状态,并了解如何定义局部链接样式。 1. ...
友情提醒:修改风格设置必须具备一定网页css样式设计知识,建议您找些这方面的书看一下,在定义中也不能使用单引号或双引号,否则会容易造成程序错误。 ============================...
a:link, a:visited { color: #f5ea01; text-decoration: none; font-weight: bold; } a:active, a:hover { color: #f5ea01; text-decoration: underline; } p { margin: 0px; padding: 0px; }
首先,了解链接的四个不同状态是至关重要的:`a:link`(未访问的链接),`a:visited`(已访问的链接),`a:hover`(鼠标悬停时的链接)和`a:active`(被点击或激活时的链接)。我们可以为每个状态设置不同的样式。 ...
1. 超链接访问过后hover样式就不出现的问题 被点击访问过的超链接样式不在具有hover和active了,很多人应该都遇到过这个问题,解决方法是改变CSS属性的排列顺序: L-V-H-A Code: <style type="text/css"> <!–...
如果顺序错误,比如将`a:hover`放在`a:link`之前,那么在某些浏览器中,悬停状态可能不会像预期那样显示,因为`a:link`的样式会覆盖`a:hover`。 在实际工作中,为了代码的可读性和简洁性,我们可以合并一些通用样式...
正确的顺序是先定义`:link`和`:visited`,再定义`:hover`和`:active`,确保在任何时刻,浏览器都能够正确地识别链接的状态。 有时候,我们可能只需要为特定的链接或一组链接定义样式,这时可以通过ID或类选择器来...
在提供的示例代码中,作者通过CSS为`<a>`标签定义了一个名为`.button`的类。这个类包含了上面提到的所有属性,以及针对不同状态的伪类设置: ```css a.button:link, a.button:visited { padding: 3px 6px 2px 8px;...