views:

2641

answers:

1

Any way to customize the border and background of an HTML SELECT in IE? I can style the border with simple CSS in Firefox, but apparantly not in IE.

+2  A: 

IE is most likely in quirks mode. Previous versions of IE didn't draw the select element themselves and thus it couldn't be styled properly (as well as some z-order quirks), so on IE < 8 you simply can't do it, unless you re-implement something like select in JS. Take a look at the developer tools (F12) to see which browser and document mode IE is in; if it says "Internet Explorer 8" for the Browser mode and not "Quirks mode" for the document mode, you should be ok :)

The following snippet works fine here (IE8β2):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
            "http://www.w3.org/TR/html4/strict.dtd"&gt;
<html>
    <head>
        <style type="text/css">
            select {
                border: 1px solid red;
            }
        </style>
    </head>
    <body>
        <form>
            <select>
                <option>1</option>
                <option>2</option>
            </select>
        </form>
    </body>
</html>
Joey
correct, but previous versions of IE had issues with border.
scunliffe
Sure, but it's tagged "ie8", so I assumed s?he was talking about IE8. And yes, I've made it rather implicit that previous versions won't do border styling; I'll change that.
Joey