代码之家  ›  专栏  ›  技术社区  ›  Tom Hamming

当我将其目标面板的样式从硬编码改为CSS时,为什么ModalPopupXtender不起作用?

  •  4
  • Tom Hamming  · 技术社区  · 16 年前

    CSS中的样式:

    .class1
    {
        border: solid 1px black;
        display: none;
        width: 700px;
        height: 400px;
        background-color: gray;
        overflow: scroll;
    }
    .class2
    {
        background-color: White;
        height: 90%;
        width: 95%;
    }
    .backgroundClass
    {
        background-color: gray;
        filter: alpha(opacity=70);
        opacity: 0.7;
    }
    

    专家组:

    <asp:Panel ID="pnlModalContainer" runat="server"  CssClass="class1">
        <asp:Panel ID="pnlModalHandle" runat="server">
            <table cellpadding="0" cellspacing="0" border="0" width="650px">
                <tr>
                    <td>
                        Content Here&nbsp;|&nbsp;
                        <asp:Label ID="lblTitle" runat="server" Text=""></asp:Label>
                    </td>
                </tr>
            </table>
        </asp:Panel>
        <div style="padding-left: 25px;">
            <table cellpadding="1" cellspacing="0" border="0" class="class2">
                <tr valign="top">
                    <td>
                        <asp:UpdatePanel ID="udpPopups" runat="server">
                            <ContentTemplate>
                                ...content here...
                            </ContentTemplate>
                        </asp:UpdatePanel>
                    </td>
                </tr>
                <tr valign="bottom">
                    <td align="right" style="padding-bottom: 5px; padding-right: 5px;">
                        <asp:Button ID="btnModalOk" runat="server" Text="Ok" />&nbsp;&nbsp;
                        <asp:Button ID="btnModalCancel" runat="server" Text="Cancel" CausesValidation="false" />
                    </td>
                </tr>
            </table>
        </div>
    </asp:Panel>
    

    和MPE:

    <cc1:ModalPopupExtender ID="mpeAction" runat="server" PopupControlID="pnlModalContainer"
    TargetControlID="fakeButton" BackgroundCssClass="backgroundClass" DropShadow="false"
    PopupDragHandleControlID="pnlModalHandle" RepositionMode="RepositionOnWindowResizeAndScroll" />
    

    这是在ASP.NET2.0中实现的。像这样设置,我看到背景显示,但弹出窗口没有出现。但是,如果我将class1的内容作为一种样式向下移动到标记中,效果会很好。弹出窗口通过VB代码发出的Javascript显示,使用 ScriptManager.RegisterStartupScript() .

    1 回复  |  直到 15 年前
        1
  •  0
  •   John Kurlak    15 年前

    样式表中样式的特异性可能低于内联样式的特异性。尝试添加 !important 到每个属性值的末尾。例如:

    .class1
    {
        border: solid 1px black !important;
        display: none !important;
        width: 700px !important;
        height: 400px !important;
        background-color: gray !important;
        overflow: scroll !important;
    }
    ...
    

    见: CSS Specificity

    推荐文章