6

AjaxControlToolkit の ModalPopupExtender を Firefox、Chrome、IE8 で正しく動作させていますが、IE8 互換モードで実行すると、ページのコンテンツの上ではなく後ろにポップアップします。
ポップアップは、Masterpage によってレンダリングされるユーザー コントロールにあります。マスター ページのコンテンツ (ヘッダーとサイドバー) がグレー表示されているため、マスター ページのコンテンツの前にポップアップが表示されますが、コンテンツのプレースホルダーはポップアップの前にレンダリングされます。マスターページのDoctype宣言を次のように変更することを提案するソリューションをオンラインで見つけました。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

しかし、私はすでにその正確な宣言を行っていましたが、まだ配置の問題があります。ポップアップコードは次のとおりです。

<cc1:ModalPopupExtender ID="ModalPopupExtender1" runat="server"
    TargetControlID="lnkbtnDealerID"
    PopupControlID="pnlPopup"
    BackgroundCssClass="modalBackground"
    DropShadow="true"
    OkControlID="OkButton"
    CancelControlID="CancelButton"
    OnOkScript=""
    >
</cc1:ModalPopupExtender>

  <asp:Panel ID="pnlPopup" runat="server" CssClass="modalPopup" Style="display: none"     Width="233px">
   <p>Are you sure?  Your current shopping cart is valid only for the current Dealer ID.      Switching Dealer IDs will reset your cart according to the new Dealer ID chosen.</p>

   <br />
   <div align="center">
      <asp:Button ID="OkButton" runat="server" Text="Ok" />
      <asp:Button ID="CancelButton" runat="server" Text="Cancel" />
   </div>
   </asp:Panel>

そして関連する CSS:

.popupControl {
    background-color: white;
    position:absolute;
visibility:hidden;
border-style:solid;
border-color: Black;
border-width: 2px;
}

.modalBackground {
background-color:Gray;
filter:alpha(opacity=70);
opacity:0.7;
}

.modalPopup {
background-color:white;
border-width:1px;
border-style:solid;
border-color:Gray;
padding:3px;
width:250px;
}
4

5 に答える 5

1

IEで設定できるZインデックスは、現在の親divに対してのみです。上位のdivは、常に下位のdivの上にレンダリングされます。常にModualwindowDivをタグの直後に配置することで問題を解決しました。それが最初のdivである場合、それは常に一番上にあります。

ヘンリック

于 2010-02-26T21:34:22.860 に答える
1

同じ問題を解決しようとしているときに、あなたの投稿を見つけました。私にとっては、すべてのページ コンテンツが含まれている mainBody と呼ばれる div タグまで追跡しました。この div を制御する CSS クラスには相対位置がありますが、z-index はありません。mainBody の z-index を -1 に設定するとすぐに、modalPopup が IE7 で完全に機能しました。

お役に立てれば?!

于 2009-11-17T02:58:33.463 に答える
0

これはあなたが使用できる解決策かもしれません:

メニューの Z-index と ASP.net の ajax ModalPopupExtender の問題

私もこの問題に遭遇しました...しかし、IE6/7を実際にサポートする予定のないプレリリース製品で. しかし、私はそれを試してみました。モーダル ポップアップでコントロールを保持するすべての div の z-index が非常に高い (10001 など) ことを確認してください。

于 2009-09-17T15:09:03.163 に答える