ul { margin:0; padding:0; list-style:none; width:120px; border-bottom:1px solid #ccc; font-size:12px;} ul li { position:relative;} li ul { position:absolute; left:119px; top:0; display:none;} ul li a { width:108px; display:block; text-decoration:none; color:#666666; background:#fff; padding:5px; border:1px solid #ccc; border-bottom:0px;} ul li a:hover { background-color:#ddd;} /*解決ul在IE下顯示不正確的問題*/ * html ul li { float:left; height:1%;} * html ul li a { height:1%;} /* end */ li:hover ul,li.over ul { display:block;}
css代碼的編寫基本上保持了與橫向?qū)Ш较嗤乃悸?,不同的是,為了?shí)現(xiàn)導(dǎo)航中的了導(dǎo)航與主導(dǎo)航在實(shí)現(xiàn)鼠標(biāo)交互的同時(shí),保持其相對位置一致,我們使用了對ul li{}使用了position:relative;使其定位方式轉(zhuǎn)為相對定位。而對li ul{}即子導(dǎo)航采用了position:absolute;相對于導(dǎo)航的絕對定位方式,了其鼠標(biāo)交互后的位置一致。 也許您已經(jīng)發(fā)現(xiàn),這里在css代碼未尾增加了一段注釋的定義* html ul li 與* html ul li a。這里用到的是CSS hack,這是因?yàn)椴煌臑g覽器對代碼的解析不同,用來實(shí)現(xiàn)在各瀏覽器上顯示相同的效果而使用的。這段代碼只有IE瀏覽器能解析,其它瀏覽器視而不見。 本例的最終顯示效果如下: