2010-05-24 65 views
1

我知道,我知道IE6對不對?那麼不管論證有多強烈 - 我現在必須請IE6。無法在IE6中設置輸入字段,爲什麼?

我有一個文本輸入字段。我的風格是字體和背景顏色。但我無法讓IE6顯示我正在改變的更改。這裏是我的標記和CSS。

<style> 
    input[readonly='readonly'], input.readonly { 
    color:red !important; 
    background:#EBEBE4 !important; 
    border:solid 1px #7F9DB9 !important; 
    cursor:default; 
} 
</style> 

這裏是我的表格。

<form name="mainform" method="post" action="/link.aspx" id="mainform"> 
    <div class="section"> 
     <label for="shipFirstName">First Name:<abbr title="Required field">*</abbr></label> 
     <input type="text" name="shipFirstName" id="shipFirstName" value="Rich" readonly='readonly' class='readonly' maxlength="13" /> 
     <label for="shipFirstName">Last Name:<abbr title="Required field">*</abbr></label> 
     <input type="text" name="shipLastName" id="shipLastName" value="Sturim" readonly='readonly' class='readonly' maxlength="26" /> 
    </div> 
</form> 

我知道問題出在選擇

input[readonly='readonly'], input.readonly 

但我不知道我有什麼做的就是IE6承認「只讀」類。

任何想法?

回答

4

IE6被input[readonly='readonly']選擇器弄糊塗,並將整個規則視爲語法錯誤。你將不得不制定兩個不同的規則,使其工作:

<style> 
    input[readonly='readonly'] { 
    color:red !important; 
    background:#EBEBE4 !important; 
    border:solid 1px #7F9DB9 !important; 
    cursor:default; 
} 
    input.readonly { 
    color:red !important; 
    background:#EBEBE4 !important; 
    border:solid 1px #7F9DB9 !important; 
    cursor:default; 
} 
</style> 
+0

完美 - 感謝馬丁! – rsturim 2010-05-24 19:31:23

+0

我應該提到,在這種特殊情況下,第一條規則顯然是多餘的。我剛剛從類似的情況中複製了這種情況,只讀類添加了特定於IE6的腳本,在這種情況下,需要複製該規則。 – Martin 2010-05-24 21:29:30

+0

感謝馬丁,單獨的規則的東西扔給我。上帝是IE6有史以來PITA! – mdgrech 2011-09-09 21:36:02

1

使用

input[readonly] { 
    // stuff 
} 
0

IE6不支持屬性選擇器,我想你只是需要擺脫input[readonly='readonly'],這可能會解決你的問題。

2替代解決方案:

  • 添加類屬性的input(就像你一樣)
  • 使用JavaScript。
相關問題