显示在Button后面的水平列表项中的面板

时间:2012-09-17 07:16:39

标签: c# asp.net css

在我的母版页面上,我创建了一个由CSS设置样式的水平菜单。列表项显示带有链接按钮的面板,以将用户带到不同的页面。

除一页外,面板始终显示上述控件 页面内容显示了2个asp:Buttons。在此页面上,面板隐藏在按钮后面,但面板的边框仍显示。

下图将清楚说明:
Evidence

水平菜单的CSS如下:

/* Horizontal menue style */
ul 
{

    padding: 0;
    margin: 0 0 0 0 ;
    list-style: none;
}

li 
{
    cursor: default;
    float: left;
    position: relative;
    width: 90px;
    color: darkgray;
    text-align: center;
    background-color: white;
    height: 23px;
    padding-top: 2px;
}

li:hover {
    background-color: white;
    color: black;
    padding-top: 2px;
}

li ul 
{

    display: none;
    position: absolute;
    margin: 0;
    padding: 0;
    margin-top: -9px;
    width: 100px;
}

li > ul 
{

    top: auto;
    left: auto;
}

li:hover ul, li.over ul
{
    display: block;
}

面板通过皮肤文件:
<asp:Panel runat="server" CssClass="menuWrapper" SkinID="MenuWrapper"></asp:Panel>

.menuWrapper 
{
    z-index: 500;
    font-size: small;
    margin-top: 15px;
    margin-left: -2px;
    padding: 5px;
    padding-left: 15px;
    line-height: 25px;
    background-color: white;
    width: 190px;
    text-align: left;
    border-left: 1px lightgray solid;
    border-bottom: 1px lightgray solid;
    border-right: 1px lightgray solid;
    border-top-right-radius: 5px 5px;
    border-bottom-right-radius: 5px 5px;
    border-bottom-left-radius: 5px 5px;
}

我甚至在摆弄z-index。我该如何创建解决方案。

1 个答案:

答案 0 :(得分:0)

答案在于UL的z-index。 我已将UL css更改为以下内容:

ul 
{

    padding: 0;
    margin: 0 0 0 0 ;
    list-style: none;
    z-index: 499;
}

现在已经解决了这个问题。