Asp.net-Ajax
為什麼我的 CalendarExtender 在渲染時會重疊?
我正在開發一個 .NET Web 應用程序,並在其中使用 CalendarExtender 控制項讓使用者指定日期。出於某種原因,當我點擊圖示顯示日曆時,背景似乎是透明的。
我在其他頁面上使用了擴展器,沒有遇到這個問題。
我不確定它是否值得一提,但日曆嵌套在一個面板內,該面板上附有一個圓角擴展器,以及它下面的面板(“從”重疊的地方)。
在該面板中,我確實有一個 div 佈局設置來創建兩列。
編輯:這裡要注意的另一件事是,具有名稱和暱稱的“佔位符”的部分都是 ASP.NET 標籤控制項,如果這很重要的話。
所以再四處摸索,我發現了這個問題。部分問題源於我設置的用於創建兩個單獨列的 div 佈局使用 position:relative 和 float:right/left 屬性。
根據我的閱讀,一旦您開始增加 div 標籤的位置屬性,它就會影響渲染的 z-index,只有當日曆控制項動態“彈出”時才會變得複雜。
不幸的是,CalendarExtender 沒有 Z-Index 屬性,除非您想為日曆編寫完整的樣式,而我不想這樣做。但是,您可以通過將以下內容添加到 CSS 文件來擴展預設樣式:
.ajax__calendar_container { z-index : 1000 ; }如果您不使用 CSS 文件,您也可以將其添加到頁面的 head 部分:
<style type="text/css"> .ajax__calendar_container { z-index : 1000 ; } </style>這應該可以解決問題。它對我有用。
如果由於某種原因這不起作用(並且有些人仍然報告問題),更“激進”的方法是將輸入欄位和 CalendarExtender 包裝在 DIV 標記中,然後將以下內容添加到您的 CSS 文件/HEAD 部分:
.ajax__calendar { position: relative; left: 0px !important; top: 0px !important; visibility: visible; display: block; } .ajax__calendar iframe { left: 0px !important; top: 0px !important; }…希望這對你有用。