DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> CSS入門知識 >> CSS基礎知識 >> 7.2 超鏈接偽類
7.2 超鏈接偽類
編輯:CSS基礎知識     

一、超鏈接偽類簡介

在所有浏覽器中,超鏈接的樣式如下:

我們可以看出鏈接在鼠標點擊不同時期的樣式是不一樣的。

  • (1)默認情況:字體為藍色,帶有下劃線;
  • (2)鼠標點擊時:字體為紅色,帶有下劃線;
  • (3)鼠標點擊後:字體為紫色,帶有下劃線;

注:點擊時,指的是點擊超鏈接的一瞬間,字體是紅色的。這個樣式變化是一瞬間的事情。

1、如何去除超鏈接下劃線

超鏈接默認情況下帶有下劃線,看起來挺難看的,而且用戶體驗也不好。在CSS中,一般使用“text-decoration:none”來去除超鏈接下劃線,我們在“下劃線、刪除線和頂劃線”這一節已經詳細講解了text-decoration屬性。

語法:

text-decoration:none;

舉例:

在線測試
 
<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>去掉超鏈接默認樣式</title>
    <style type="text/css">
        .a2{text-decoration:none;}
    </style>
</head>
<body>
    <a href="http://www.lvyestudy.com" class="a1"> 學習網</a><br/>
    <a href="http://www.lvyestudy.com" class="a2"> 學習網</a>
</body>
</html>

在浏覽器預覽效果如下:

分析:

由於第二個a標簽應用了“text-decoration:none”,因此它的下劃線被去掉了。

2、如何定義超鏈接偽類

在CSS中,我們使用超鏈接偽類來定義超鏈接在不同時期的不同樣式。

語法:

 
    a:link{CSS樣式}
    a:visited{CSS樣式}
    a:hover{CSS樣式}
    a:actived{CSS樣式}

說明:

表1 使用偽類定義動態超鏈接 屬性 說明 a:link 定義a元素未訪問時的樣式 a:visited 定義a元素訪問後的樣式 a:hover 定義鼠標經過顯示的樣式 a:active 定義鼠標單擊激活時的樣式

定義這四個偽類,必須按照“link、visited、hover、active”的順序進行,不然浏覽器可能無法正常顯示這4種樣式。請記住,這4種樣式定義順序不能改變!

大家可能覺得比較難把這個樣式順序記憶。沒關系,對於掌握俺有一個挺好的方法。“love hate”,看到了麼,這樣就記住了。我們把超鏈接偽類的順序規則稱為“愛恨原則”。大家以後寫代碼的時候想起“愛恨原則”,自然而然就寫出來了。

舉例:

在線測試
 
<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>超鏈接偽類</title>
    <style type="text/css">
        #div1
        {
            width:100px;
            height:30px;
            line-height:30px;
            border:1px solid #CCCCCC;
            text-align:center;
            background-color: #40B20F;
        }
        a{text-decoration:none;font-size:18px;}
        a:link{color:white}
        a:visited{color: purple; }
        a:hover{color:yellow;text-decoration:underline;}
        a:active{color:red;}
    </style>
</head>
<body>
    <div id="div1">
        <a href="http://www.lvyestudy.com"> 學習網</a>
    </div>
</body>
</html>

在浏覽器預覽效果如下:

鼠標經過樣式如下:

點擊鏈接時樣式如下:

注:點擊鏈接是一瞬間的事情,大家請留意一下超鏈接的樣式變化。

在此學習了CSS超鏈接偽類,我們可以使用CSS偽類向文本鏈接添加復雜而多樣的樣式。

3、深入了解超鏈接偽類

大家可能開始有疑問了,是不是每一個超鏈接都必須要定義4種狀態的樣式呢?答案是否定的。一般情況下,我們只用到2種狀態:未訪問狀態和鼠標經過狀態。大家仔細觀察一下 學習網的導航就知道了, 導航也只是定義了這2種狀態。

未訪問狀態,我們直接在a標簽定義就行了,沒必要使用“a:link”。

語法:

 
a{CSS樣式}
a:hover{CSS樣式}

舉例:

在線測試
 
<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>超鏈接偽類</title>
    <style type="text/css">
         #div1
        {
            width:100px;
            height:30px;
            line-height:30px;
            border:1px solid #CCCCCC;
            text-align:center;
            background-color: #40B20F;
        }
        a{text-decoration:none;color:purple}
        a:hover{color:white}
    </style>
</head>
<body>
    <div id="div1">
        <a href="http://www.lvyestudy.com"> 學習網</a>
    </div>
</body>
</html>

在浏覽器預覽效果如下:

鼠標經過時樣式如下:

疑問

1、很多人覺得按照正常人思維來說,超鏈接樣式的定義順序應該是“未訪問樣式、鼠標經過樣式、點擊時樣式、訪問後樣式”,但是為什麼定義超鏈接樣式必須要按照“未訪問樣式、訪問後樣式、鼠標經過樣式、點擊時樣式”才能在浏覽器中正常顯示這4種樣式呢?

這個問題是新手經常問到的問題,其實這是W3C官方規定的,也許官方的思維跟我們的不一樣。規則這種東西嘛,一般都是官方定的,就像交通規則一樣,我們只需要遵守就行了,沒必要糾結為什麼綠燈走而紅燈停。

不過我們也有很好的記憶方法,大家不用擔心。那就是“愛恨原則”。愛她,是因為超鏈接偽類讓超鏈接變得更“美麗”;恨她,是因為順序太難記。所以我們對她又愛又恨。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved