日期:2013-06-09  浏览次数:20996 次

  经常有朋友问:如何使有超级连接的文字不出现下划线,如何使鼠标挪动到超连上产生变色的效果?其实这些通过传统的方法是办不到的。而使用CSS的控制却可以非常轻松地作到,而且,页面的代码也不会臃肿。
★★先看看超连没有下划线的例子:

例子1: 这个连接可以去页面底部,但是没有下划线。

是如何作到这一点的呢?在<head>和</head>之间加上如下的CSS语法控制:

<style type="text/css">
<!--
a:link { text-decoration: none}
a:active { text-decoration: none }
a:visited { text-decoration: none }
-->
</style>

这样浏览器在执行时,就明白:

a:link 指正常的未被访问过的链接 
a:active 指正在点击的链接
a:visited 指曾经访问过的链接
其中,text-decoration是文字修饰效果的意思,none参数表示使有超级链接的文字不显示下划线。如果讲none替换成underline就表示有下划线,换成overline则给超连文字加上划线,换成 line-through给超连文字加上删除线,blink则使文字在闪烁。


★★类似的控制:使粗体文字加上删除线。

例子2: 闪烁的粗体文字 使用的代码是:B { text-decoration: line-through }

★★类似的控制:是粗体文字中所有的字母大写。

使用代码: B { text-transform: uppercase }

例子3:产生既大写,又有颜色,又有删除线的效果 hello welcome and enjoy them !


以上的代码是:b { text-decoration: line-through; text-transform: uppercase; color: #66FFFF} 

类似的,用lowercase使所有字母小写显示,capitalize 使每个单词的首字母大写显示。


★★下面则是产生连接变色效果的内容:

在上面的“例子1”中,如果作一点修饰,可以使具有link,active,visited属性的连接显示不同的颜色,但是却不会产生鼠标覆盖变色效果。先看下面的代码,使连接文字显示绿色,正在点击的连接显示黄色,曾经反复问过的连接显示红色。算是复习前面的内容(别忘记啊!):

<style type="text/css">
<!--
a:link { text-decoration: none ; color: green }
a:active { text-decoration: none ; color: yellow }
a:visited { text-decoration: none ; color: red }
-->
</style>

如果要产生变色效果,就要用到另一个属性了,这就是 hover,看下面的代码。

a:hover { text-decoration: none ; color: yellow } 表示鼠标挪动到连接文字上时,文字修饰风格为“无”(即没有下划线),同时显示黄色。

a:hover { text-decoration: underline; color: green } 表示鼠标挪动到连接文字上时,文字修饰风格为“underline”(即下划线),同时显示绿色。

★★扩展一下:如果我们同时用下面2种属性,会产生什么效果呢?


a:link { text-decoration: none ; color: yelloe ; font-size: 9pt }

a:hover { text-decoration: underline; color: green ; font-size: 12pt }

连接文字没有下划线,黄色显示,9pt大小。鼠标挪动到连接上时出现下划线,颜色为绿色,字符大小12pt。是不是变色了?而且字体由于大小变化,就有动感了,似乎一下子扩大了。

总之,所有前面讲过的方法,要综合运用才可以呀。

★★留意:并不是所有的浏览器都支持所有的选项属性。本人在多个浏览器上测试一下。