如果我設置了可見性:隱藏在嵌套的li元素上,如何將其設置爲懸停?如何設置嵌套列表的「懸停」
例如。
#menu li ul li {
visibility: hidden;
}
我想:
#menu li ul li:hover {
visibility: visible;
}
但它不工作 - 這麼清楚我沒有語法正確的!
歡呼
如果我設置了可見性:隱藏在嵌套的li元素上,如何將其設置爲懸停?如何設置嵌套列表的「懸停」
例如。
#menu li ul li {
visibility: hidden;
}
我想:
#menu li ul li:hover {
visibility: visible;
}
但它不工作 - 這麼清楚我沒有語法正確的!
歡呼
visibility: hidden
隱藏元素,不留hoverable表面,所以絕不會有一個hover
事件觸發。
嘗試opacity: 0
(或甚至opacity: 0.00001
,目前還不確定表面是否保留0
)以獲得所需的效果。請注意,IE < 8需要特殊處理(filter: alpha(opacity=0)
)
其他瀏覽器還需要其他opacity
設置,請查看@Nick Craver的鏈接獲取完整列表。
爲什麼不能在每個<裏添加子包裝>這樣的(可能是AP或者一個div):
<li><p>dadada</p></li>
然後,對於造型:
#menu ul li p {
visibility: hidden;
}
#menu ul li:hover p {
visibility: visible;
}
+1在大多數情況下,這將是最好,最簡單的方法。 – 2010-06-18 10:52:14
+1絕對優雅 – nottinhill 2010-08-08 18:38:25
+1 - 這是正確的,雖然你需要包括一些[不同瀏覽器的其他不透明度值](http://css-tricks.com/css-transparency-settings-for-all-broswers/) – 2010-06-18 10:38:45
@Nick好點,你當然,不僅僅是IE不能總是處理「不透明」問題。我爲此添加了一個註釋。 – 2010-06-18 10:40:34
這不會在ie6中工作,因爲lis不允許懸停 - 這需要與ie6中的JS – matpol 2010-06-18 10:45:27