横向菜单是通过div及JavaSprict实现下拉控制,纵向菜单呢?答案是肯定的。我们现在要做的就是一个纵向菜单,css代码:
ul{margin:0;padding:0;list-style:none;width:120px;border-bottom:1pxsolid#ccc;font-size:12px;}
ulli{position:relative;}
liul{position:absolute;left:119px;top:0;display:none;}
ullia{width:108px;display:block;text-decoration:none;color:#666666;background:#fff;padding:5px;border:1pxsolid#ccc;border-bottom:0px;}
ullia:hover{background-color:#ddd;}
/*解决ul在IE下显示不正确的问题*/
*htmlulli{float:left;height:1%;}
*htmlullia{height:1%;}
/*end*/
li:hoverul,li.overul{display:block;}
css代码的编写基本上保持了与横向导航相同的思路,不同的是,为了实现导航中的了导航与主导航在实现鼠标交互的同时,保持其相对位置一致,我们使用了对ulli{}使用了position:relative;使其定位方式转为相对定位。而对liul{}即子导航采用了position:absolute;相对于导航的绝对定位方式,了其鼠标交互后的位置一致。
也许您已经发现,这里在css代码未尾增加了一段注释的定义*htmlulli与*htmlullia。这里用到的是CSShack,这是因为不同的浏览器对代码的解析不同,用来实现在各浏览器上显示相同的效果而使用的。这段代码只有IE浏览器能解析,其它浏览器视而不见。
本例的最终显示效果如下:
[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]