The dual mode mentioned by someone else should work (but not as Microsoft has shown), and this is the closest I've seen in the MS documentation, which should work as described. There below is an update showing the correct form that the meta attribute value should take.
So if you use this:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7; IE=EmulateIE9">
Unfortunately, what you get is IE8 rendering like IE8 due to the fuzzy vector version that the x-ua-compatible engine makes. See This document: Defining Document Compatibility: Representation of Content Attribute Values in MSDN. In this section, you will see that in the first half of the year they define any version vector that is larger than the current version of the browser and will be interpreted as the largest rendering mechanism available. Therefore, emulateIE9 translates to emulateIE8. Stupid.
Then, almost in one breath, they talk about using several version vectors, as in the code snippet above, to exclude a specific engine. But due to the logic of the fuzzy version, this will never work. Ah, Microsoft. Fail again.
The reason why using CCs around meta won't work is because the browser had to choose a rendering engine by the time it gets to CC. The x-ua meta tag must be present before anything else in the header, except for other meta or header in accordance with MS's own documentation.
If anyone can figure this out, I'm all ears because I desperately want to exclude IE8 from support, including IE9.
IMPORTANT UPDATE :
Robocat indicates using a comma rather than a semi-colon, as Micrsoft shows the right way to do this. I tested it and it worked for me. I updated the test page.
So the form is correct - this is (as suggested by robocat):
<meta http-equiv="X-UA-Compatible" content="IE=7, IE=9">
The form is wrong - this is (as suggested by Microsoft):
<meta http-equiv="X-UA-Compatible" content="IE=7; IE=9">
squareman Oct 20 2018-10-1020: 57
source share