昨晚看到的,今天來記錄一下
有時我們可能希望內部連結與外部連結顯示不同的樣式
如外部連結我想在連結的旁邊加上一個小表徵圖,以表示其是一個外部的連結,來告訴來訪者,讓他們
來確認是在新視窗開啟還是在本視窗開啟。
我們可能會這樣做:
.external
{
background:url(images/external.gif) no-repeat right top;
padding-right:12px;
}
然後給每一個外部的連結應用該CSS,當然,這樣做並不是不可以,只是太繁瑣。
那有沒有好的辦法來實現呢?有。
可以利用CSS3中的屬性選擇,但是在IE6及以下版本不支援該方法,但在FireFox中已經實現了。
屬性選取器的基本文法如下:
[att^=val]
如
a[href^="http://www.lemongtree.com"]
{
background-image:none;
padding-right:0px;
}
會尋找所有以http://www.lemongtree.com開頭的連結,並且排除背景圖片
有了上面的屬性,就好辦了
<style type="text/css"><br />a<br />{<br />background:url(external.gif) no-repeat right top;<br />padding-right:14px;<br />font-size:12px;<br />}<br />a[href^="http://www.lemongtree.com"]<br />{<br />background-image:none;<br />padding-right:0px;<br />}<br /></style>
先給所有連結加標,然後去掉以http://www.lemongtree.com開頭的連結表徵圖,這樣就實現了外部連結顯示
表徵圖,內部連結不顯示表徵圖了.
註:firefox中適用,IE就不行了。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><br /><html xmlns="http://www.w3.org/1999/xhtml"><br /><head><br /><title> new document </title><br /><meta name="generator" content="editplus" /><br /><meta name="author" content="" /><br /><meta name="keywords" content="" /><br /><meta name="description" content="" /><br /><style type="text/css"><br />a<br />{<br />background:url(http://www.lemongtree.com/images/external.gif) no-repeat right top;<br />padding-right:14px;<br />font-size:12px;<br />}<br />a[href^="http://www.lemongtree.com"]<br />{<br />background-image:none;<br />padding-right:0px;<br />}<br /></style><br /></head><br /><body><br /><a href="http://www.lemongtree.com">Lemongtree.Com</a><br /><br /><a href="http://www.blueIdea.com/">BlueIdea</a><br /><br /></body><br /></html><br />