中山php|最优网络中山做网站 中山php建站

最优良人

2011/08/27 at 15:01

简单的下拉菜单,CSS+几行JS代码实现

这是最近一个项目使用到的下拉菜单效果,首先定义一个id为nav的ul,ul->li里面放的是下拉出来的菜单,也是一个ul:

<ul id="nav">
<li><a href="<?url ctrl=home?>">首 页</a></li>
<li><a href="#">|</a></li>
<li><a href="#">关于我们</a>
<!-- 下拉部分-->
<ul><li><a href="#">公司简介</a></li>
<li><a href="#">总经理致辞</a></li>
</ul></li>
<!-- 下拉部分-->
</ul>

js就几行代码:

<script type=text/javascript><!--//--><![CDATA[//><!--
function menuFix() {
var sfEls = document.getElementById("nav").getElementsByTagName("li");
for (var i=0; i<sfEls.length; i++) {
sfEls[i].onmouseover=function() {
this.className+=(this.className.length>0? " ": "") + "sfhover";
}
sfEls[i].onMouseDown=function() {
this.className+=(this.className.length>0? " ": "") + "sfhover";
}
sfEls[i].onMouseUp=function() {
this.className+=(this.className.length>0? " ": "") + "sfhover";
}
sfEls[i].onmouseout=function() {
this.className=this.className.replace(new RegExp("( ?|^)sfhover\\b"),
"");
}
}
}
window.onload=menuFix;
//--><!]]></script>

css代码:

#nav {
line-height: 24px; list-style-type: none;
}
#nav a {
display: block; text-align:center;
}
#nav a:link {
color:#a6ce38; text-decoration:none;
}
#nav a:visited {
color:#a6ce38;text-decoration:none;
}
#nav a:hover {
color:#F00; text-decoration:none;;
}
#nav li {
float: left; padding-left:15px; font-family:"微软雅黑"; font-size:14px;
}
#nav li a:hover{
color:#F00;
}
#nav li ul {
line-height:18px; list-style-type: none;text-align:left;
left: -999em; width:120px; position: absolute;

}
#nav li ul li{
background: #FFF;/*没有背景在ie6下会有一点小问题*/
float:left; width:100px;
font-family:"微软雅黑"; font-size:12px; color:#F00;
margin:0px;padding:0;
clear:both;
}
#nav li ul a{
display: block; width:100px;text-align:left;
}
#nav li ul a:link {
color:#a6ce38; text-decoration:none;
}
#nav li ul a:visited {
color:#a6ce38; text-decoration:none;
}
#nav li ul a:hover {
color:#FFF; text-decoration:none;
background:#F00;
}
#nav li:hover ul {
left: auto;
}
#nav li.sfhover ul {
left: auto;
}

标签:,
-