我能否在IE 8中使用CSS更改SELECT元素的边框颜色/样式?

4

阅读以下内容后,我发现情况非常棘手:

IE6/IE7 css border on select element http://api.jquery.com/css/

然而,也许随着Internet Explorer 8的出现,情况已经发生了改变。如果是这样的话,我期望这段代码可以在IE8中运行:

 $(selectObject).css("border", "1px solid red");
 $(selectObject).css("border-style", "dashed");

这在Firefox中的表现符合我的期望,但在Internet Explorer 8中没有。(在IE8中没有任何变化)。所以要么我忘了什么,要么IE8仍然存在问题(根据上下文的意思)。
如果我对IE8有所遗漏,那是什么?
如果IE8明确存在问题,并且不能使用CSS更改SELECT元素的属性,那么您是否有任何权威来源来解释这种情况?(以及可能的解决方法?)

我不知道为什么IE仍然表现得像叛逆者和开发人员的噩梦! - bragboy
2个回答

2

非常感谢!在 HTML 页面的 HEAD 部分使用以下代码似乎可以解决这个问题(至少对于 IE8):<meta http-equiv="X-UA-Compatible" content="IE=100" >。 - Emre Sevinç

1

如果你在IE8中工作过,你可以在这里查看一个测试:http://jsfiddle.net/G7ThX/

你确定你的页面不是在怪异模式下吗?

至于替代方案,有一些jQuery路线可以完全替换渲染的<select>以实现UI效果,比如Stylish Select Box最新代码在这里),这些更容易进行样式设置,如果你想做的不仅仅是边框并且跨浏览器呈现相同,则可能是更好的选择。

这些插件大多通过隐藏<select>并使用其选项来工作,但仍在后台设置其值...表单对提交的值没有区别,因此很容易放入。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接