In an earlier article, A Look at ASP.NET's Adaptive Rendering, I discussed how the ASP.NET Web controls render HTML 4.0-compliant markup for Internet Explorer and HTML 3.2-compliant markup for non-Microsoft browsers. Since there are a number of modern, non-Microsoft browsers that support HTML 4.0, this default behavior can be a bit annoying. Fortunately the machine.config or Web.config files can be tweaked so that particular non-Microsoft browsers are sent HTML 4.0-compliant markup.
While this tweak sends HTML 4.0-compliant markup to browsers that can support it, it still leaves one problem - the ASP.NET validation controls will still not render client-side validation script. In a new article of mine, Client-Side Validation in Downlevel Browsers, I discuss why this is the case, and look at a few workarounds. Unfortunately, it's not as easy as simply changing a setting in machine.config.