For some strange reason IE8 sets the "compatibility view" for all the intranet sites:
So I couldn't see the "compatibility view" button next to my URL bar.
I had to go to Tools - Compantibility View Settings and uncheck the flag "Display intranet sites in Compatibility View".
No my site (intranet site) is shown in standard mode and everything works as expected.
Thanks Microsoft cause, once again, I've wasted a few hours for your silliness.
UPDATE
As Oleg suggested you can add these tags to your configuration file (ASP.NET and MVC):
<system.webServer>
<httpProtocol>
<customHeaders>
<clear />
<add name="X-UA-Compatible" value="IE=8" />
</customHeaders>
</httpProtocol>
...
</system.webServer>
but this only works in IIS7 cause <system.webServer>
is not used by IIS6.
A better way to achieve the same results - and it works for me - is to put a META tag in the master page in the HEAD section:
<meta http-equiv="X-UA-Compatible" content="IE=8" />
I've tested it and it works even if you have "Display intranet sites in Compatibility View" active.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…