IE8 Release Candidate 1 was announced, which makes IE8 rather close to being finalized (well closer than beta 2 was anyways). In my testing of IE8 on various sites I been writing, I notice the biggest problems will occur with javascript frameworks not yet updated to recognize IE8 as being different than IE7 (lightview being a good example). As well as some CSS/Conditional quirks that might try to adjust pages in IE8 as if it were IE7 which won't work in the default mode.
If you have a site that you are either not sure if will work in IE8, or know it doesn't currently work in IE8 and don't have the time or reasource to correct the problem (or perhaps you can't because the coder of a script hasn't updated it yet with no foreseeable update in the works), then there is least one way to prevent all of your sites from automatically breaking upon IE8's release.
Like I said most of the sites I used I didn't see a huge problem with the latest beta/RC release, except in the areas of javascript functionality, and a couple minor quirks with css/layout especially if IE conditionals were used.
The preferred method is sending a header directly to the browser prior to loading content (I'd also recommend sending the page's charset before content gets loaded to avoid problems).
PHP
if Straight xHTML
What the above does is tells IE8 to render the page in compatibility mode (how it would be rendered under IE7). This is a quick fix if your site already works in IE7.
Though as more users switch over to IE8 I would recommend coding the site again IE8 without trying to use the limitation above, since there's no guarantee that compatibility mode will exist in the next version after. (And I think the code above also in a way declares limitations in FF and other browsers, even though those browsers do not take actions upon it to my knowledge like IE8 does.)
To help insure IE8 compatibility in future sites, make sure you declare a DOCTYPE (I prefer xhtml strict or transitional), I also found that adding this xml encoding declaration at the top of the document (before doctype declaration) seems to help IE render properly if using an xhtml document (even without the IE7 quirk above)
If its php use this method instead.
If I missed something, mention so.
If you have a site that you are either not sure if will work in IE8, or know it doesn't currently work in IE8 and don't have the time or reasource to correct the problem (or perhaps you can't because the coder of a script hasn't updated it yet with no foreseeable update in the works), then there is least one way to prevent all of your sites from automatically breaking upon IE8's release.
Like I said most of the sites I used I didn't see a huge problem with the latest beta/RC release, except in the areas of javascript functionality, and a couple minor quirks with css/layout especially if IE conditionals were used.
The preferred method is sending a header directly to the browser prior to loading content (I'd also recommend sending the page's charset before content gets loaded to avoid problems).
PHP
Code:
header('X-UA-Compatible: IE=7;FF=3;OtherUA=4');
if Straight xHTML
Code:
<meta http-equiv="X-UA-Compatible" content="IE=7;FF=3;OtherUA=4" />
What the above does is tells IE8 to render the page in compatibility mode (how it would be rendered under IE7). This is a quick fix if your site already works in IE7.
Though as more users switch over to IE8 I would recommend coding the site again IE8 without trying to use the limitation above, since there's no guarantee that compatibility mode will exist in the next version after. (And I think the code above also in a way declares limitations in FF and other browsers, even though those browsers do not take actions upon it to my knowledge like IE8 does.)
To help insure IE8 compatibility in future sites, make sure you declare a DOCTYPE (I prefer xhtml strict or transitional), I also found that adding this xml encoding declaration at the top of the document (before doctype declaration) seems to help IE render properly if using an xhtml document (even without the IE7 quirk above)
Code:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
If its php use this method instead.
Code:
<? echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
If I missed something, mention so.