昨天在做showModalDialog 中一个树的时候需要更改链接的样式,从网上查了一下css设置:
先看一下常用设置:
a:link 超链接的普通样式
a:visited 点击过的
a:hover 鼠标经过时的
a:active 单击时
a:link{text-decoration:none;} 无下划线
a:link{text-decoration:underline;} 有下划线
为了实现不同链接不同效果,我们要为不同效果的那个链接专门定义一个css规则。
比如:
我们常规css是这样的:
a:link{color:#ff0000}
那么网页上所有链接的颜色都是:#ff0000。
现在我们改一下:
a:link{color:#ff0000}
.line1 a:link{color:#000000}
同时,在要改变颜色的链接前加上css定义,像这样:<span class=line1><a href="/">不同颜色的超链接</a></span>,这样的话,这个链接的颜色就改变了。
a: link用在为访问的连接上。
a :visited用在已经访问过的连接上。
a :hover用于鼠标光标置于其上的连接。
a :active用于获得焦点(比如,被点击)的连接上。
有人或许要问了,难道顺序也有限制吗?在刚学css的时候,不明白为什么自己在链接设置上面都设置的很好了,但显示出来却不是自己想要的那种效果,这是因为一些浏览器会忽略一条或者更多的锚元素伪类规则,除非它们早已按次序排列出来, 就是上面所显示顺序,也挺好记的(LVHA)
在css链接这些属性中,常用到的是color(文字颜色属性),background(背景颜色属性),text-decoration(文字修饰属性即是否有下划线)
一般情况下,只要按照上面顺序,在css中都能很好的定义链接样式,但今天却遇到一个问题,思考了好久,也不明白是怎么回事,只能暂时归结于是bug造成的.
在修改blog模板的时候,"我的分类"里面的文字链接样式想定义成目前大家看到的这个样子,于是csscss 链接颜色样式表如下:
#tb2 a:link{color:#706A5E;
text-decoration:none; }
#tb2 a:visited{color:#706A5E;
text-decoration:none; }
#tb2 a:hover{
color:#FFFFFF;
background-color: #706A5E ;
text-decoration:underline; }
问题出现了,点击后,文字颜色就变成了紫色,并成了默认点击后文字的颜色,如下图左:
检查了半天,发现顺序,设置都没有问题,但问题出在哪儿了呢?于是将css链接样式重新改写成:
#tb2 A:link,#tb2 A:visited,#tb2 A:active{ text-decoration: none;color: #706A5E;}
#tb2 A:hover{ color:#FFFFFF;
background-color: #706A5E ;
text-decoration:underline; }
发表评论