DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> CSS入門知識 >> CSS進階教程 >> 用CSS屬性選擇器控制鏈接樣式
用CSS屬性選擇器控制鏈接樣式
編輯:CSS進階教程     

有時我們可能希望內部鏈接與外部鏈接顯示不同的樣式,如外部鏈接。我想在鏈接的旁邊加上一個小圖標,以表示其是一個外部的鏈接,來告訴來訪者,讓他們來確認是在新窗口打開還是在本窗口打開。我們可能會這樣做:

.external
{
   background:url(images/external.gif) no-repeat right top;
  padding-right:12px;
}

然後給每一個外部的鏈接應用該CSS,當然,這樣做並不是不可以,只是太繁瑣。

那有沒有好的辦法來實現呢?有。可以利用CSS3中的屬性選擇,但是在IE6及以下版本不支持該方法,在FireFox中已經實現了。

屬性選擇器的基本語法為:[att^=val] 
例如:
a[href^="http://www.blueidea.com"]
{
background-image:none;
padding-right:0px;
}

會查找所有以http://www.blueidea.com開頭的鏈接,並且排除背景圖片。有了上面的屬性,就好辦了。

<style type="text/css">
a
{
background:url(external.gif) no-repeat right top;
padding-right:14px;
font-size:12px;
}
a[href^="http://www.blueidea.com"]
{
background-image:none;
padding-right:0px;
}
</style>

先給所有鏈接加上圖標,然後去掉以http://www.blueidea.com開頭的鏈接圖標,這樣就實現了外部鏈接顯示圖標,內部鏈接不顯示圖標了。

注:firefox中適用,IE就不行了
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title> new document </title>
<meta name="generator" content="editplus" />
<meta name="author" content="" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<style type="text/css">
a
{
background:url(/articleimg/2007/05/4701/external.gif) no-repeat right top;
padding-right:14px;
font-size:12px;
}
a[href^="http://www.blueidea.com"]
{
background-image:none;
padding-right:0px;
}
</style>
</head>
<body>
<a href="http://www.blueidea.com">BlueIdea</a><br />
<a href="http://www.lemongtree.com/">Lemongtree.Com</a><br />
</body>
</html>

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