龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > asp.net编程 >

Asp.net菜单控件实例(兼容IE7,IE8,Chrome,Firefox)(2)

时间:2009-12-21 11:47来源:未知 作者:admin 点击:
分享到:
因此要生成可显示和隐藏的菜单项,关键在css的设置上,开始时将二级子菜单设置为隐藏visibility: hidden; 同时定义li的hover事件,li:hover时:自菜单的visibi

因此要生成可显示和隐藏的菜单项,关键在css的设置上,开始时将二级子菜单设置为隐藏visibility: hidden;

同时定义li的hover事件,li:hover时:自菜单的 visibility要改为visible; 大致原理是这样,当然还有注意菜单项的位置

一级菜单float:left;使其能水平显示。

CSS定义如下:

.navmenu *
{
    margin
: 0;
    padding
: 0;
}
.navmenu
{
    border
: #000 1px solid;
    height
: 25px;
}
.navmenu li
{
    
/*水平菜单*/
    float
: left;
    list-style
: none;
    position
: relative;
}
.navmenu a
{
    display
: block;
    font-size
: 12px;
    height
: 24px;
    width
: 100px;
    line-height
: 24px;
    background-color
: #CDEB8B;
    color
: #0000ff;
    text-decoration
: none;
    text-align
: center;
    border-left
: #36393D 1px inset;
    border-right
: #36393D 1px inset;
    border-bottom
: #36393D 1px inset;
}
/*单独设置一级菜单样式*/
.navmenu > ul > li > a
{
    font-size
: 11px;
    font-weight
: bold;
}
.navmenu a:hover
{
    background
: #369;
    color
: #fff;
}
/*新增的二级菜单部分*/
.navmenu ul ul
{
    visibility
: hidden; /*开始时是隐藏的*/
    position
: absolute;
    left
: 0px;
    top
: 24px;
}
.navmenu ul li:hover ul, .navmenu ul a:hover ul
{
    visibility
: visible;
}
.navmenu ul ul li
{
    clear
: both; /*垂直显示*/
    text-align
: left;
}
/*选中菜单项*/
.navmenu .selected
{
    padding-left
:15px;
    background-position-x
:0px;
    background-image
: url(./res/selected.gif);
    background-repeat
: no-repeat;
    text-decoration
:underline;
}

定义CSS后的效果如下:

到此菜单控件已完成。已测试过可以在IE7,IE8,Chrome,Firefox中正常显示,在IE6显示可能会有问题,可以参考纯CSS多级菜单 进行修改,

本文的CSS显示部分参考了此文的介绍。

 附上完整代码,如需要可自行下载修改:/Files/ruinet/WebMenu.zip


收藏文章
表情删除后不可恢复,是否删除
取消
确定
图片正在上传,请稍后...
评论内容为空!
还没有评论,快来抢沙发吧!

热评话题

按钮 内容不能为空!
立刻说两句吧! 查看0条评论
精彩图集

赞助商链接