我挖有人寫一些CSS代碼,我發現這一點:
.hover和:hover有什麼區別?
li.hover, li:hover {
}
是否有.hover之間的任何差別:懸停?
也許有些瀏覽器對hover
有不同的表現?
我挖有人寫一些CSS代碼,我發現這一點:
.hover和:hover有什麼區別?
li.hover, li:hover {
}
是否有.hover之間的任何差別:懸停?
也許有些瀏覽器對hover
有不同的表現?
:hover
是psuedo-class而.hover
是類hover
選擇這些符號(:
和.
)不改變其他任何CSS選擇器建構意義:看W3C CSS Level 3 Recommendation所有的細節。
大概有一些JavaScript可以切換hover
類,這可能是因爲在「傳統」瀏覽器中缺少支持LI元素的:hover
。我知道,IE5/6(ICK!)只支持:hover
的鏈接,但是:
(和以往一樣,確保頁不是在 「怪異模式」 :-)
編碼愉快。
.hover
就是一個類名(可能是用來表示「這是我[編碼器]想看看同一個懸停的項目」,而:hover
是僞類,當鼠標移動到它。(個人我用.hl
代替.hover
類似的東西)
所以我不''必須寫a.hover,a:一起盤旋?它只有:懸停?! – 2012-01-04 05:04:44
這是正確的。 – 2012-01-04 05:05:09
@AlmasAdilbek:這*不一定正確。假設'hover'類是用javascript添加的,並且您希望獲得儘可能多的瀏覽器支持,您仍然需要兩者! ':hover'在舊版瀏覽器中很多元素都不支持,包括'li'。 [pst的答案](http://stackoverflow.com/a/8722199/398242)解釋它。 – 2012-01-04 05:32:01
.hover
是一個正常的類名,就像任何其他類名一樣,它沒有什麼特別的含義。
:hover
是您自己無法創建的僞類,只有在用戶使用鼠標懸停在元素上時纔會生效。
是:一個班級(即.hover
),另一個是僞班級(:hover
)。當鼠標位於元素上時,僞類將被匹配,並且當元素具有該類時,該類將被匹配。
推測這個類是通過JavaScript添加的。這可能是爲了兼容性(IE的某些版本,我相信IE6或IE7,只支持:hover
,<a>
元素),或者它可能是用於額外的功能(例如粘性突出顯示)。
Thx for quirkmode鏈接 – 2012-01-04 05:12:21