使用css+js构造的无限级菜单(寻梦的稻草人)

 

先看看效果:

css menu 

html代码:

 

< html >
< head >
< style >
ul#menu, ul#menu ul
{
    list-style
: none ;
    margin
: 0 ;
    border-bottom
: 1px solid #DDD ;
    border-right
: 1px solid #DDD ;
    border-left
: 1px solid #DDD ;
    width
: 150px ;
    padding
: 0 ;
    font-size
: 14px ;
}
ul#menu li
{
    border-top
: 1px solid #DDD ;
    position
: relative ;
    padding
: 4px ;

}
ul#menu li ul
{
    position
: absolute ;
    left
: 150px ;
    _left
: 144px ;     
    top
: 0 ;
    display
: none ;
}
ul#menu li.over
{
    background
: #EEE ;
}
ul#menu li.out
{
    background
: #fff ;
}
ul#menu a
{
    display
: block ;
    text-decoration
: none ;
    color
: #000 ;
    _height
: 0 ;
}
</ style >
< script  type ="text/javascript" >
function  initMenu(event,ul){
    
if ( ! ul) ul  =  document.getElementById( " menu " );
    li 
=  ul.getElementsByTagName( " li " );
    
for (i = 0 ;i < li.length;i ++ )
    {
        li[i].onmouseover 
=   function (){
            
try {
                
this .className = ' over ' ;
                
this .getElementsByTagName( " ul " )[ 0 ].style.display = " block " ;
            }
catch (e){};
        }
        li[i].onmouseout 
=   function (){
            
try {
                
this .className = ' out ' ;
                
this .getElementsByTagName( " ul " )[ 0 ].style.display = " none " ;
            }
catch (e){};
        }
    }
}
window.onload 
=  initMenu;
</ script >
</ head >
< body >
< ul  id ="menu" >
    
< li >
        这是菜单1
        
< ul >
            
< li >
                这是菜单1
                
< ul >
                    
< li >< href ="#" > 这是子菜单 </ a ></ li >
                    
< li >
                        这是菜单1
                        
< ul >
                            
< li >< href ="#" > 这是子菜单 </ a ></ li >
                            
< li >< href ="#" > 这是子菜单 </ a ></ li >
                            
< li >
                                这是菜单1
                                
< ul >
                                    
< li >< href ="#" > 这是子菜单 </ a ></ li >
                                    
< li >
                                        这是菜单1
                                        
< ul >
                                            
< li >< href ="#" > 这是子菜单 </ a ></ li >
                                            
< li >< href ="#" > 这是子菜单 </ a ></ li >
                                            
< li >< href ="#" > 这是子菜单 </ a ></ li >
                                        
</ ul >
                                    
</ li >
                                    
< li >< href ="#" > 这是子菜单 </ a ></ li >
                                
</ ul >
                            
</ li >
                        
</ ul >
                    
</ li >
                    
< li >< href ="#" > 这是子菜单 </ a ></ li >
                
</ ul >
            
</ li >
            
< li >
                这是菜单1
                
< ul >
                    
< li >< href ="#" > 这是子菜单 </ a ></ li >
                    
< li >< href ="#" > 这是子菜单 </ a ></ li >
                    
< li >< href ="#" > 这是子菜单 </ a ></ li >
                
</ ul >
            
</ li >
            
< li >< href ="#" > 这是子菜单 </ a ></ li >
        
</ ul >
    
</ li >
    
< li >
        这是菜单2
        
< ul >
            
< li >< href ="#" > 这是子菜单 </ a ></ li >
            
< li >< href ="#" > 这是子菜单 </ a ></ li >
            
< li >< href ="#" > 这是子菜单 </ a ></ li >
        
</ ul >
    
</ li >
    
< li >
        这是菜单3
        
< ul >
            
< li >< href ="#" > 这是子菜单 </ a ></ li >
            
< li >< href ="#" > 这是子菜单 </ a ></ li >
            
< li >< href ="#" > 这是子菜单 </ a ></ li >
        
</ ul >
    
</ li >
</ ul >
</ body >
</ html >
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值