The .Net framework has the capability to evaluate the user agent and, accordingly, render the web page for that specific browser version.
The problem here is that .Net, following the Microsoft long "I know best" record history, thinks it knows better than developers what the developers what to do. The outcome: the application may actually not work, at least as expected, on some browsers.
I got this yesterday, as I had to maintin compatibility with Internet Explorer 6 in a .Net 4 application and, some how, Internet Explorer 6 wasn't working. What is even wierd is that the same application on .Net 1.1, the maintenance branch, was working fine! Plus, against .Net official documentation, Internet Explorer 6 should work because it is set as the default minimum, but in reallity it didn't!
After some research, I've came across with the solution. Using the ClientTarget property from the Page class, I've just foced to assume everyone is using, at least, Internet Explorer 6.
./M6