It occurred to me the other day that now IE8 was out of beta it was perhaps time to consider web site rendering, in this new latest and greatest improved version of the infamous browser line.
I had downloaded it and installed to one of our spare machines at work but hadn’t really tested any sites in it but started to think about it this morning and how it finally was going to handle Doc type switching.
I had taken an interest early on in it’s development phase at the aspect of rendering modes and the absolute furore that had grown amongst the Standards development community at the suggestion by Microsoft that it would employ some awkward and clumsy method of browser sniffing using the meta tags in a document, given the fact that by and large it was likely that if you were already coding to a set of strict standards there would probably be few real issues I decided to become supine and unconcerned and essentially ignore the browser while in beta development phase, now though I have the need to know exactly how IE8 will deal with this aspect and thus turned to my friend Google for a spot of quick research.
First port of call was the MSDN blogs and this entry Microsoft’s Interoperability Principles and IE8Microsoft’s Interoperability Principles and IE8 although an old article it does seem to confirm the situation as I remember it that IE team had decided to follow the development community wishes that IE8 default to a full standards rendering, instead of having deliberately set browser sniffing in operation via meta tags to ‘turn on’ IE8 Standards mode.
So if you actually want IE7 rendering mode (not sure why you would really) you have to explicitly state that using meta tags then IE8 will switch to the older standards rendering mode that IE7 used.
How do we developers handle things? with my limited experience thus far of IE8 but given that I had always thought that if one wrote valid standards compliant pages with full strict DTD then nothing really changes; hopefully we should now see fewer problems and greater acceptance and realisation of Standards, IE6 and IE7 will continue to display with issues and bugs but I will deal with these as I have been doing using Conditional Comment to provide a separate sheet for those browsers.
If one felt the need to force IE8 to render as IE7 then this is the code that one should use:
<meta http-equiv="X-UA-Compatible" content="IE=7" />
Therefore continue using a valid Strict DTD (not sure at this stage how IE8 interprets a Trans mode DTD, but suspect that for full standards mode it will be as before a DTD complete with system Identifier for standards mode rather than quirks) and all should be well with only the need to provide style rules filtered for earlier versions as we have been used to doing.
One final note and something that ought to be shouted from the rooftops is that IE8 finally quashes that most ghastly of conditions that has plagued us for years and been a root cause of so many issues – hasLayout IS AT LONG LAST DEAD! it is at long last removed, gone forever 🙂Tweet
Comments are closed.