Removing the IE10 Select Element Arrow

conditional-statements, css, internet-explorer-10

Solution

Avoid browser-sniffing and conditional comments (which aren't supported as of Internet Explorer 10), and instead take a more standard approach. With this particular issue you should be targeting the `::-ms-expand` pseudo element:

select::-ms-expand {
    display: none;
}

Problem

So, with Mozilla and WebKit I have a half-decent solution replacing the arrow on the `select` box using `appearance: none;` and having a parent element. In IE for the most part I disabled this feature. For IE10 I can't actually disable it since my conditional comments don't actually work. Here is my markup: ``` <!--[if lt IE 7 ]> <html class="ie6"> <![endif]--> <!--[if IE 7 ]> <html class="ie7"> <![endif]--> <!--[if IE 8 ]> <html class="ie8"> <![endif]--> <!--[if IE 9 ]> <html class="ie9"> <![endif]--> <!--[if (gt IE 9)]> <html class="ie10plus"> <![endif]--> <!--[if !(IE)]><!--> <html> <!--<![endif]--> ``` The class `ie10plus` doesn't actually make it's way to the markup. I also feel like there might be a legitimate way to replace the arrow in IE. I am not opposed to actually fixing the problem. `appearance: none;` however does not work. So what can I do here?

Original source

Related problems