Server control IDs in ASP.NET 4
It’s been known for a while that the new version of ASP.NET will take care of an old problem, the id mangling of server controls. In short, your carefully selected id could be rewritten into something like “ctl00_MainContent_” before rendered to the client.
Since this is one of the most annoying issues for several reasons, the change is very welcome by us markup-aware developers. All three of us.
Scott Guthrie has now written a summary of the fix in Cleaner HTML Markup with ASP.NET 4 Web Forms. Even if you don’t use the built-in controls and keep Web Forms at arm’s length, this is still something for all ASP.NET developers out there to be aware of.
Over two years ago I mentioned some of the problems with ASP.NET 1.1/2.0 in my post ASP.NET and standards compliancy. Some of those issues are unfortunately still in the framework, but I like that they are working in the right direction for a change.