學習超級鏈接A標記
來源:易賢網 閱讀:915 次 日期:2016-06-24 14:26:53
溫馨提示:易賢網小編為您整理了“學習超級鏈接A標記”,方便廣大網友查閱!

問:

我已經使用CSS定義了超鏈接的樣式,但是瀏覽時hover(鼠標懸停)卻不起作用。為什么會這樣?是瀏覽器的問題嗎?

答:

雖然你認為可能原因是瀏覽器問題,但是更多的可能是你樣式定義時順序錯誤。為了保證能看到不同狀態(tài)下的連接樣式,正確的樣式順序應該是:

" link - visited - hover - active "或" LVHA "(縮寫)。

核心內容:

每個選擇符selector都有一個“specificity”如果兩個selectors應用于同一個元素,具有較高specificity的選擇符將勝出,具有優(yōu)先權。例如:

P.hithere {color: green;} /* specificity = 1,1 */

P {color: red;} /* specificity = 1 */

任何設置了類class=hithere的段落內容顯示為綠色而不是紅色。兩個selectors都設置了顏色,但是具有更高specificity的選擇符將勝出。

偽類如何影響specificity呢?它們具有完全相同的加權值,下列樣式具有相同的specificity加權值:

A:link {color: blue;} /* specificity = 1,1 */

A:active {color: red;} /* specificity = 1,1 */

A:hover {color: magenta;} /* specificity = 1,1 */

A:visited {color: purple;} /* specificity = 1,1 */

這些都是用于超鏈接的樣式設置。大部分情況下需要同時設置其中的幾個樣式,例如,一個未被訪問的超鏈接在鼠標懸停和點擊時可設置“鼠標懸?!焙汀笆髽思せ睢皟煞N狀態(tài)下的不同樣式,由于上述三個規(guī)則都可應用于超鏈接,并且全部選擇符具備相同的specificity,那么根據規(guī)則,最后一個樣式“勝出”。所以" active "式樣永遠也不會顯示出來,因為它總是被" hover "式樣覆蓋(即" hover "優(yōu)先)?,F在再來分析一下已經被訪問過的超鏈接鼠標懸停是什么效果,結果永遠是purple紫色的:( ,因為它的" visited "式樣總是優(yōu)先于其它的狀態(tài)樣式規(guī)則(包括" active "和" hover")而顯示。

這就是為什么CSS1推薦樣式順序的原因:

A:link

A:visited

A:hover

A:active

實際上,開頭兩個樣式的順序可以調換,因為一個超鏈接不可能同時存在“未訪問”和“已訪問”兩種狀態(tài)。( :link意思是" unvisited ";我不知道為什么不這樣定義呢.)

CSS2現在允許偽類可以以“聯合成組”形式出現,例如:

A:visited:hover {color: maroon;} /* specificity = 2,1 */

A:link:hover {color: magenta;} /* specificity = 2,1 */

A:hover:active {color: cyan;} /* specificity = 2,1 */

They have the same specificity, but they apply to fundamentally different beasts, and so don't conflict. You can get hover-active combinations, for example.

如何理解本文當中所涉及到的“specificity”呢?specificity可以理解未簡單地連在一起的號碼字符串,上面的一個例子:

P.hithere {color: green;} /* specificity = 11 */

P {color: red;} /* specificity = 1 */

這好像是一個基于十進制的簡單運算。然而計算“specificity”不能使用十進制算法,例如你把15種選擇符連在一起使用、它們具有的“specificity”加權值還是比簡單的class選擇符低。舉例:

.hello {color: red;} /* specificity = 10 */

HTML BODY DIV UL LI OL LI UL LI OL LI UL LI OL LI (color: green;} /* specificity = 15 */

" 10 "實際上是一個“1”后面接著“零”、不是"十",我們可以使用十六進制描述前面的樣式規(guī)則的specificitiy,像下面:

.hello {color: red;} /* specificity = 10 */

HTML BODY DIV UL LI OL LI UL LI OL LI UL LI OL LI (color: green;} /* specificity = F */

唯一的問題是如果你想為第二個樣式規(guī)則增加兩個或更多的選擇符時,那時你就可能得到一個“17”的specificity、會再一次混淆。事實上specificity可能是無窮大的,所以為了避免更多的混亂,建議使用逗號來分隔specificity的值。

建議:反復練習specificity的加權值的計算,網站CSS的設置體現了你控制頁面的能力,在動態(tài)網站開發(fā)中,CSS的地位也是非常重要的,多看資料,多練習

更多信息請查看網頁制作
易賢網手機網站地址:學習超級鏈接A標記

2025國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權所有:易賢網