2012-12-22 44 views
5

我有一個更改HTML選擇的顏色的要求。我搜索了很多,但沒有找到一個在IE中工作的示例。那麼,我可以在IE中更改禁用HTML選擇元素的顏色嗎?我需要一個樣本,在CSS或JavaScript或jQuery中。 這是我試過的。我可以更改IE中禁用HTML選擇元素的顏色嗎?

<select disabled="disabled"> 
    <option value="a">option A</option> 
    <option value="b">option B</option> 
    <option value="c">option C</option> 
</select> 

[disabled] { 
    color: #933; 
    background-color: #ffc; 
} 


select:disabled 
{ 
    border: solid 1px silver; 
    background-color: #F9F9F9; 
    color:blue; 
} 


[disabled] option { 
    background-color: #ffc; color: #933; 
} 
+1

使用另一元件,以顯示,而不是選擇(隱藏選擇禁用時)。 '我需要代碼'不是一個問題,你需要提供代碼來改變目前選擇的 – charlietfl

+0

@charlietfl,它看起來像一個很好的建議?我會嘗試。編輯問題 – user960567

+0

你想改變什麼顏色?每個選擇都針對不同的事情。另外,你希望這個工作在哪個IE?只是IE9 +,還是更深入的支持? – jmeas

回答

1

嘗試

[disabled="disabled"] { 
    color: #933; 
    background-color: #ffc; 
} 

*[disabled="disabled"] { 
    color: #933; 
    background-color: #ffc; 
} 

select[disabled="disabled"] { 
    color: #933; 
    background-color: #ffc; 
} 

或使用jQuery

<script type="text/javascript"> 
    jQuery(document).ready(function() { 
     jQuery('[disabled="disabled"]').css({ 'color': '#993333', 'background-color': '#ffffcc' }); 
    }); 
</script> 
+0

在IE – user960567

+0

中沒有任何工作最好的辦法是給你的選擇框一個ID屬性或類名選擇它通過CSS這樣select.name {...},因爲通過使用屬性選擇是一件事,IE瀏覽器是不能在早期版本中做。 – algorhythm

+0

與jquery它必須工作,即使IE6 – algorhythm

1

的解決方案是使用::-ms-value選擇器:

select[disabled]::-ms-value { 
    color: red; 
} 
相關問題