我有以下ASP.Net代碼控制風格覆蓋
...
<div style="width: 40%; float: left; margin-left: 15px">
<b>County:</b>
<asp:ComboBox ID="cboCounty" runat="server" MaxLength="0"
AutoCompleteMode="SuggestAppend" CssClass="EPSCombo">
</asp:ComboBox>
<br />
...
問題:這個div包含許多組合框的,他們並不如預期顯示,他們都有EPSCombo
類。當我調試CSS我發現它是被重寫,這裏是從螢火
我EPSCombo
風格如下(覆蓋默認AjaxToolkit CSS)
.EPSCombo .ajax__combobox_inputcontainer .ajax__combobox_textboxcontainer input
{
margin: 0;
border: solid 1px #7F9DB9;
border-right: 0px none;
padding: 1px 0px 0px 5px;
font-size: 13px;
height: 18px;
}
.EPSCombo .ajax__combobox_inputcontainer .ajax__combobox_buttoncontainer button
{
margin: 0;
padding: 0;
background-image: url(../images/windows-arrow.gif);
background-position: top left;
border: 0px none;
height: 21px;
width: 21px;
}
.EPSCombo .ajax__combobox_itemlist
{
border-color: #7F9DB9;
}
和輸出包含EPSCombo的CSS文件是Master頁面中包含的最後一個。
問題:它可能已經有一段時間了,因爲我做了web開發,但是如果我決定CSS控件不應該具有最高優先級並且應該覆蓋其他所有內容,那麼正確嗎?如果是這樣,那麼爲什麼我的組合框樣式(高度,寬度,邊距和填充)正被覆蓋?我沒有任何其他類型的設置Firebug中顯示的值的高度和寬度。 Loki的回答
更新後,我想我應該補充這一點,添加!important
這些屬性可以解決這個問題,但我想給這個根本原因,看看事情發生了錯誤。
正如你所看到的重寫樣式一樣,線樣式具有最高優先級,所以你需要檢查你的代碼,可能是你在代碼中添加這些樣式或者可能使用java腳本。 –
我有這種擔心,但正如我所說我沒有任何其他地方,分配這些具體的價值觀,也在我的問題,我只顯示一個組合框,但'Div'有更多,他們每個人都有不同的價值。在我的JS中,我通常不會更改控件的CSS。有沒有一種方法可以搜索或查看我的控件樣式是否正在被JS修改? –
@JafarKofahi如果你有權訪問.js文件 - 你可以搜索類名或元素標籤,看看他們正在做什麼 –