2012-02-22 92 views
0

一个选择标签CSS选择器我有这一块HTML在Internet Explorer

<select multiple="" name="colonia_id[]" id="colonia_id[]" onchange="" size="10"></select> 

我需要改变选择菜单的宽度。我不能在select标签中使用width属性,因为HTML是自动生成的。所以我只需要使用CSS选择器。我试图选择与以下的菜单,并在谷歌浏览器都工作...

select[multiple]{ 
    width:320px; 
} 

select[name="colonia_id[]"]{ 
    background-color:yellow; 
} 

但他们不工作与Internet Explorer。我不能只使用select,因为我不想更改表单中的其他选择菜单。

如何更改在Internet Explorer中选择菜单的样式?

+0

请给整个HTML树到那个选择。这种形式有没有独特之处? – 2012-02-22 16:36:04

+1

不回答这个问题,但这里有一个网站添加到您的工具,如果你还没有使用它:http://caniuse.com/。 – 2012-02-22 16:36:50

+0

你没有在IE6中测试,是吗? – BoltClock 2012-02-22 16:41:09

回答

4

试试这个:

#colonia_id\[\] { 
    background-color:yellow; 
} 

通过转义括号,CSS识别它们。适用于IE8和7(仿真)。在Chrome中也很好。这里有一个小提琴证明:http://jsfiddle.net/97xnb/

信贷必须去这个网站,我发现这个想法:PigsLipstick

+1

这是最好的方法。选择器'select [multiple]'也可以在IE 8上工作,但是页面不能再触发怪癖模式。 – 2012-02-22 16:57:29

+0

这也适用于IE6,假设OP在IE6中测试,因为两个属性选择器都应该在IE7 +中工作。 – BoltClock 2012-02-22 17:07:04