-
鏈接
<a href="#"></a>//#代表空鏈接
a標簽是內(nèi)聯(lián)元素,如果兩個內(nèi)聯(lián)元素之間出現(xiàn)了空格或者換行,那個勿亂出現(xiàn)多少次,內(nèi)聯(lián)元素中間會多出一個字符的間距。
瀏覽器默認字符的樣式是長這個樣子的:

偽類
—定義:用于向某些選擇器,添加特殊的效果。(源自w3C)
—使用方法:元素:偽類名稱{屬性值} ,eg:a:hover{ color:red}//當鼠標經(jīng)過時字體變?yōu)榧t色。:link 向未被訪問的鏈接添加樣式。
:visited 向已被訪問的鏈接添加樣式。(不明白為什么text-decoration不顯示,其他三個偽類都可以,)
:hover 當鼠標懸浮在元素上時,添加的樣式。
:active 當鼠標按下元素,按住了時,向元素添加的樣式。
以上四種各個瀏覽器都兼容。:focus 向擁有鍵盤輸入焦點的元素添加樣式(IE6、7不支持)
:first-child 向某個元素的第一個子元素添加樣式(IE6、7、8不支持)
還有幾個偽類,見用的不多,見過再了解。:first,:left,:right,:lang。
-
通過偽類控制鏈接的屬性
<style>
a:link{
text-decoration: none;
color: black;
}
a:visited{
text-decoration: line-through;//???
color: red;
}
a:hover{
text-decoration: underline;
color: blue;
}
a:active{
text-decoration: none;
color: white;
}</style> <body> <a href="#">測試</a> </body>
—注意這四個偽類的順序是有考究的,按照我的例子的順序來寫。為什么呢?
CSS特性
1、繼承:元素中子元素將繼承父元素的樣式。
2、層疊:網(wǎng)頁中子元素定義了與父元素相同的屬性,則子元素的樣式將覆蓋父元素的樣式。而且,同一個元素,后面定義的樣式會覆蓋前面定義的樣式。
分析:通過對上面特性的理解,可以分析一下上面四個偽類的動作。
a:visited,鼠標按住了這一動作,可以包含以上三種偽類的情況。理解一下,這個鏈接被按住了,但是,他也可能是未訪問過的,也可能是訪問過的,我鼠標按啦,也是在鏈接上。但是,我只想讓他顯示a:visited里面的樣式,所以必須放在最后。同理去理解:hover。
-
不支持偽類怎么破
我們不是有javascript么,:focus可以通過使用
document.getElementById('d').onfocus=function(){
this.className=blue;
}//前提:id已經(jīng)標識過,類.blue已將建過。這個類內(nèi)描述了獲得焦點時的樣式。
