<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>James Scariati</title>
	<atom:link href="http://jscariati.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://jscariati.wordpress.com</link>
	<description>Web Designer &#38; Developer</description>
	<lastBuildDate>Sat, 10 Sep 2011 14:57:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='jscariati.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/b2d9b965322b305a84b4f790b5b90355?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>James Scariati</title>
		<link>http://jscariati.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://jscariati.wordpress.com/osd.xml" title="James Scariati" />
	<atom:link rel='hub' href='http://jscariati.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Windows Phone 7</title>
		<link>http://jscariati.wordpress.com/2010/11/24/windows-phone-7/</link>
		<comments>http://jscariati.wordpress.com/2010/11/24/windows-phone-7/#comments</comments>
		<pubDate>Wed, 24 Nov 2010 23:20:46 +0000</pubDate>
		<dc:creator>jscariati</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Windows Phone 7]]></category>

		<guid isPermaLink="false">http://jscariati.wordpress.com/?p=792</guid>
		<description><![CDATA[Windows Phone 7, Microsoft&#8217;s modern replacement for the ancient Windows Mobile 6, is finally here, and it actually looks quite decent. I haven&#8217;t yet used it in person, but judging from various screenshots and videos, it looks like Microsoft really tried to innovate with their new platform, rather than create yet another &#8220;3&#215;4 grid of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=792&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Windows Phone 7, Microsoft&#8217;s modern replacement for the ancient Windows Mobile 6, is finally here, and it actually looks <a href="http://arstechnica.com/microsoft/reviews/2010/10/windows-phone-7-the-ars-review.ars">quite decent</a>. I haven&#8217;t yet used it in person, but judging from various screenshots and videos, it looks like Microsoft really tried to <em>innovate</em> with their new platform, rather than create yet another &#8220;3&#215;4 grid of rounded icons&#8221; iPhone clone. In particular, the <a href="http://www.winsupersite.com/mobile/wp7_ff_hubs.asp">&#8220;hubs&#8221; concept</a> is a really interesting idea that solves a common problem in a unique way.</p>
<p>But there&#8217;s something even more significant about the release of Windows Phone 7 &#8211; it is <em>completely incapable</em> of running Windows Mobile 6.x apps. This was absolutely the right decision for Microsoft to make, given Windows Phone 7&#8242;s radically different touch-based UI; but it&#8217;s a surprising one from Microsoft, which typically opts to preserve backwards compatibility when launching new products.</p>
<p>In fact, has Microsoft <em>ever</em> introduced a major new platform that completely broke compatibility with existing software or file formats? Imagine Microsoft releasing a new version of Windows that couldn&#8217;t run <em>any</em> existing Windows apps &#8211; it sounds crazy when you think about it from that perspective. Yet that&#8217;s basically what they&#8217;ve done with Windows Phone 7.</p>
<p>So if only for that reason alone, I hope that Windows Phone 7 succeeds. If the platform does well, Microsoft will have proven to itself that starting over from scratch can pay off. And if that inspires them to make similar revolutionary jumps with their other products, that can only be a good thing.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jscariati.wordpress.com/792/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jscariati.wordpress.com/792/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jscariati.wordpress.com/792/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jscariati.wordpress.com/792/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jscariati.wordpress.com/792/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jscariati.wordpress.com/792/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jscariati.wordpress.com/792/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jscariati.wordpress.com/792/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jscariati.wordpress.com/792/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jscariati.wordpress.com/792/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jscariati.wordpress.com/792/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jscariati.wordpress.com/792/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jscariati.wordpress.com/792/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jscariati.wordpress.com/792/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=792&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jscariati.wordpress.com/2010/11/24/windows-phone-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e7c2d2c20eee156eb26cc21ba5405b3a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jscariati</media:title>
		</media:content>
	</item>
		<item>
		<title>Mark Pilgrim on HTML5</title>
		<link>http://jscariati.wordpress.com/2010/09/25/mark-pilgrim-on-html5/</link>
		<comments>http://jscariati.wordpress.com/2010/09/25/mark-pilgrim-on-html5/#comments</comments>
		<pubDate>Sat, 25 Sep 2010 22:06:08 +0000</pubDate>
		<dc:creator>jscariati</dc:creator>
				<category><![CDATA[Notes]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Reference]]></category>

		<guid isPermaLink="false">http://jscariati.wordpress.com/?p=788</guid>
		<description><![CDATA[Mark Pilgrim&#8217;s new book on HTML5, titled &#8220;HTML5: Up and Running,&#8221; is now officially available. Select chapters are also available online, for free, at http://diveintohtml5.org. It&#8217;s an interesting and informative read for any web developer.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=788&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Mark Pilgrim&#8217;s new book on HTML5, titled &#8220;HTML5: Up and Running,&#8221; <a href="//www.amazon.com/HTML5-Up-Running-Mark-Pilgrim/dp/0596806027/ref=cm_cr_pr_product_top">is now officially available</a>. Select chapters are also available online, for free, at <a href="http://diveintohtml5.org">http://diveintohtml5.org</a>. It&#8217;s an interesting and informative read for any web developer.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jscariati.wordpress.com/788/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jscariati.wordpress.com/788/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jscariati.wordpress.com/788/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jscariati.wordpress.com/788/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jscariati.wordpress.com/788/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jscariati.wordpress.com/788/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jscariati.wordpress.com/788/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jscariati.wordpress.com/788/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jscariati.wordpress.com/788/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jscariati.wordpress.com/788/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jscariati.wordpress.com/788/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jscariati.wordpress.com/788/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jscariati.wordpress.com/788/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jscariati.wordpress.com/788/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=788&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jscariati.wordpress.com/2010/09/25/mark-pilgrim-on-html5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e7c2d2c20eee156eb26cc21ba5405b3a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jscariati</media:title>
		</media:content>
	</item>
		<item>
		<title>A Quick Tip for Writing Semantic Code</title>
		<link>http://jscariati.wordpress.com/2010/08/06/a-quick-tip-for-writing-semantic-code/</link>
		<comments>http://jscariati.wordpress.com/2010/08/06/a-quick-tip-for-writing-semantic-code/#comments</comments>
		<pubDate>Fri, 06 Aug 2010 18:49:04 +0000</pubDate>
		<dc:creator>jscariati</dc:creator>
				<category><![CDATA[Web Design Tutorials]]></category>
		<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Naming Conventions]]></category>
		<category><![CDATA[Semantics]]></category>
		<category><![CDATA[Tips & Tricks]]></category>

		<guid isPermaLink="false">http://jscariati.wordpress.com/?p=784</guid>
		<description><![CDATA[Web designers and developers are frequently urged to write &#8220;semantic&#8221; code, and with good reason &#8211; semantics add meaning to code so that it can be understood by humans and computers alike. Too often, the importance of semantic code is forgotten. Web design is constantly evolving, and if the structure and naming conventions used within [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=784&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Web designers and developers are frequently urged to write &#8220;semantic&#8221; code, and with good reason &#8211; semantics <a href="http://www.joedolson.com/articles/2008/04/why-use-semantic-html/">add meaning to code</a> so that it can be understood by humans and computers alike.</p>
<p>Too often, the importance of semantic code is forgotten. Web design is constantly evolving, and if the structure and naming conventions used within your site are based specifically on how that site looks and works <em>today</em>, you&#8217;re setting yourself up for difficulties in the future.</p>
<p>Here&#8217;s an easy example. Let&#8217;s say you have this CSS:</p>
<p><pre class="brush: css;">
.red {color: red;}
</pre></p>
<p>You&#8217;ve gone through your site and applied this class to a few paragraphs that you want to stand out from the rest of the page. But now you&#8217;ve decided to redesign, and you feel that blue would look better than red. What do you do? If you just change the property value, you&#8217;ll have a class called &#8220;red&#8221; that&#8217;s setting the text color to blue, which doesn&#8217;t make sense. On the other hand, if you change the class name itself to &#8220;blue&#8221; so that it matches, then you&#8217;ll have to go through your entire site and replace all instances of &#8220;red&#8221; with &#8220;blue.&#8221; And that still won&#8217;t help when a third redesign looks best with green &#8211; you&#8217;ll have the exact same problem.</p>
<p>But what if you had just done this?</p>
<p><pre class="brush: css;">
.important {color: red;}
</pre></p>
<p>Now you can change the text color as much as you want &#8211; text that you&#8217;ve decided is <em>important</em> will pick up whatever color you decide on. Your CSS still makes sense, and you don&#8217;t need to make a single change to your HTML.</p>
<p>So here&#8217;s a quick tip for creating semantic naming conventions &#8211; name your IDs and classes by their <em>purpose or meaning</em>, not by their appearance. Assign styles to elements based on what they <em>do</em> rather than what they <em>are</em>. You&#8217;ll thank yourself in the future!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jscariati.wordpress.com/784/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jscariati.wordpress.com/784/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jscariati.wordpress.com/784/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jscariati.wordpress.com/784/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jscariati.wordpress.com/784/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jscariati.wordpress.com/784/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jscariati.wordpress.com/784/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jscariati.wordpress.com/784/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jscariati.wordpress.com/784/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jscariati.wordpress.com/784/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jscariati.wordpress.com/784/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jscariati.wordpress.com/784/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jscariati.wordpress.com/784/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jscariati.wordpress.com/784/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=784&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jscariati.wordpress.com/2010/08/06/a-quick-tip-for-writing-semantic-code/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e7c2d2c20eee156eb26cc21ba5405b3a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jscariati</media:title>
		</media:content>
	</item>
		<item>
		<title>Replace Images With Alt Text When Printing</title>
		<link>http://jscariati.wordpress.com/2010/07/22/replace-images-with-alt-text-when-printing/</link>
		<comments>http://jscariati.wordpress.com/2010/07/22/replace-images-with-alt-text-when-printing/#comments</comments>
		<pubDate>Fri, 23 Jul 2010 01:12:03 +0000</pubDate>
		<dc:creator>jscariati</dc:creator>
				<category><![CDATA[Web Design Tutorials]]></category>
		<category><![CDATA[Alt Text]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Image]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Media Types]]></category>
		<category><![CDATA[Printing]]></category>

		<guid isPermaLink="false">http://jscariati.wordpress.com/?p=774</guid>
		<description><![CDATA[An interesting web design question was posed to me recently: is it possible to automatically replace images on a webpage with their alt text when the page is printed? I searched around online, but couldn&#8217;t find any specific solutions. So, after a bit of trial and error, I invented my own solution using JavaScript and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=774&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>An interesting web design question was posed to me recently: is it possible to automatically replace images on a webpage with their alt text when the page is printed? I searched around online, but couldn&#8217;t find any specific solutions.</p>
<p>So, after a bit of trial and error, I invented my own solution using JavaScript and CSS media types, and thought I would share in case anyone else was interested. It&#8217;s a rather specific problem, but perhaps this could be used for accessibility reasons.</p>
<h2>HTML</h2>
<p>Start off with a simple HTML document:<br />
<pre class="brush: xml;">
&lt;!DOCTYPE html&gt;
&lt;html lang=&quot;en-US&quot;&gt;
&lt;head&gt;
	&lt;meta charset=&quot;UTF-8&quot; /&gt;
	&lt;title&gt;Print Alt Text&lt;/title&gt;
	&lt;link rel=&quot;stylesheet&quot; href=&quot;css/screen.css&quot; media=&quot;screen&quot; /&gt;
	&lt;link rel=&quot;stylesheet&quot; href=&quot;css/print.css&quot; media=&quot;print&quot; /&gt;
	&lt;script type=&quot;text/javascript&quot; src=&quot;js/displayAlt.js&quot;&gt;&lt;/script&gt;
&lt;/head&gt;
&lt;body&gt;
	&lt;div&gt;
		&lt;img src=&quot;images/test1.jpg&quot; alt=&quot;This is the alt text of Test Image 1&quot; /&gt;
	&lt;/div&gt;
	&lt;div&gt;
		&lt;img src=&quot;images/test2.jpg&quot; alt=&quot;This is the alt text of Test Image 2&quot; /&gt;
	&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre></p>
<p>There&#8217;s nothing particularly special about this &#8211; just inline images wrapped in <code>&lt;div&gt;</code> tags (which aren&#8217;t necessarily required, but will probably create better results).</p>
<h2>JavaScript</h2>
<p>In the <code>&lt;head&gt;</code> of the HTML document is a script called displayAlt.js:<br />
<pre class="brush: jscript;">
window.onload = function displayAlt(){
	var imgs = document.images;
	for (i = 0; i &lt; imgs.length; i++){
		var imgParent = imgs[i].parentNode;
		var altText = imgs[i].alt;
		var altDiv = imgParent.appendChild(document.createElement('div'));
		altDiv.className = &quot;altContent&quot;;
		altDiv.innerHTML = altText;
	}
}
</pre><br />
Line by line, in plain English:</p>
<ol>
<li>When the document is loaded&#8230;</li>
<li>Find all images in the document</li>
<li>For each of these images&#8230;</li>
<li>Find the image&#8217;s parent (in this case, the wrapping <code>&lt;div&gt;</code>)</li>
<li>Get the image&#8217;s alt text</li>
<li>Create a new <code>&lt;div&gt;</code> and insert it as a child of the wrapping <code>&lt;div&gt;</code></li>
<li>Give the new <code>&lt;div&gt;</code> a class name called &#8220;altContent&#8221;</li>
<li>Take the alt text and insert it into the new <code>&lt;div&gt;</code></li>
</ol>
<p>At this point, the alt text of each image on the page will display directly underneath it.</p>
<h2>CSS</h2>
<p>Now, we want to hide the alt text when the page is viewed in the browser, but hide the <em>images</em> and instead display just their alt text when the page is printed.</p>
<p>Also in the <code>&lt;head&gt;</code> are two stylesheets:</p>
<p><pre class="brush: xml;">
&lt;link rel=&quot;stylesheet&quot; href=&quot;css/screen.css&quot; media=&quot;screen&quot; /&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;css/print.css&quot; media=&quot;print&quot; /&gt;
</pre></p>
<p>In screen.css, hide the <code>&lt;div&gt;</code>s that display the alt text:</p>
<p><pre class="brush: css;">
.altContent {
	display: none;
}
</pre></p>
<p>And in print.css, hide the images themselves:</p>
<p><pre class="brush: css;">
img {
	display: none;
}
</pre></p>
<p>Now, when the page is viewed in the browser, it will look just like normal &#8211; but when printed, all of the images will automatically be replaced with their alt text.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jscariati.wordpress.com/774/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jscariati.wordpress.com/774/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jscariati.wordpress.com/774/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jscariati.wordpress.com/774/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jscariati.wordpress.com/774/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jscariati.wordpress.com/774/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jscariati.wordpress.com/774/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jscariati.wordpress.com/774/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jscariati.wordpress.com/774/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jscariati.wordpress.com/774/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jscariati.wordpress.com/774/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jscariati.wordpress.com/774/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jscariati.wordpress.com/774/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jscariati.wordpress.com/774/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=774&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jscariati.wordpress.com/2010/07/22/replace-images-with-alt-text-when-printing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e7c2d2c20eee156eb26cc21ba5405b3a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jscariati</media:title>
		</media:content>
	</item>
		<item>
		<title>Use CSS3 visual effects in IE with CSS3 PIE</title>
		<link>http://jscariati.wordpress.com/2010/07/15/use-css3-visual-effects-in-ie-with-css3pie/</link>
		<comments>http://jscariati.wordpress.com/2010/07/15/use-css3-visual-effects-in-ie-with-css3pie/#comments</comments>
		<pubDate>Fri, 16 Jul 2010 00:39:13 +0000</pubDate>
		<dc:creator>jscariati</dc:creator>
				<category><![CDATA[Notes]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[PIE]]></category>
		<category><![CDATA[Progressive Internet Explorer]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://jscariati.wordpress.com/?p=771</guid>
		<description><![CDATA[CSS3 PIE is a brand-new HTC script that makes it possible to use advanced CSS3 visual effects, such as border-radius and box-shadow, in all versions of Internet Explorer. PIE stands for &#8220;Progressive Internet Explorer,&#8221; and using it is as easy as&#8230;pie (pardon the pun). The way it works is very clever &#8211; simply use CSS3 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=771&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://css3pie.com/">CSS3 PIE</a> is a brand-new HTC script that makes it possible to use advanced CSS3 visual effects, such as border-radius and box-shadow, in <em>all versions</em> of Internet Explorer.</p>
<p>PIE stands for &#8220;Progressive Internet Explorer,&#8221; and using it is as easy as&#8230;pie (pardon the pun). The way it works is very clever &#8211; simply use CSS3 properties like normal in your stylesheet, and then add a &#8220;behavior&#8221; property that links to PIE.htc for any element that uses those properties. PIE will automatically convert those CSS3 properties into a format that IE can simulate with its own proprietary methods.</p>
<p>The results are extremely impressive, with near pixel-perfect parity between IE and other standards-compliant browsers. In effect, you can just <em>use</em> CSS3 properties as if they&#8217;re supported natively in IE &#8211; no more clumsy workarounds or hacks.</p>
<p>This may seriously be one of the biggest advancements in web development in years.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jscariati.wordpress.com/771/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jscariati.wordpress.com/771/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jscariati.wordpress.com/771/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jscariati.wordpress.com/771/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jscariati.wordpress.com/771/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jscariati.wordpress.com/771/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jscariati.wordpress.com/771/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jscariati.wordpress.com/771/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jscariati.wordpress.com/771/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jscariati.wordpress.com/771/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jscariati.wordpress.com/771/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jscariati.wordpress.com/771/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jscariati.wordpress.com/771/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jscariati.wordpress.com/771/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=771&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jscariati.wordpress.com/2010/07/15/use-css3-visual-effects-in-ie-with-css3pie/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e7c2d2c20eee156eb26cc21ba5405b3a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jscariati</media:title>
		</media:content>
	</item>
		<item>
		<title>Use HTML5 placeholder text in all browsers</title>
		<link>http://jscariati.wordpress.com/2010/07/07/use-html5-placeholder-text-in-all-browsers/</link>
		<comments>http://jscariati.wordpress.com/2010/07/07/use-html5-placeholder-text-in-all-browsers/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 00:56:07 +0000</pubDate>
		<dc:creator>jscariati</dc:creator>
				<category><![CDATA[Notes]]></category>
		<category><![CDATA[Chrome]]></category>
		<category><![CDATA[Hint]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Input]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Placeholder]]></category>
		<category><![CDATA[Safari]]></category>

		<guid isPermaLink="false">http://jscariati.wordpress.com/?p=768</guid>
		<description><![CDATA[A common technique for enhancing web form usability is to place form field labels inside the fields themselves, often in light grey text. When a form field is clicked, the &#8220;hint&#8221; disappears, allowing the user to enter text. While the idea has been around for years, HTML 4 never provided an official method to add [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=768&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A common technique for enhancing web form usability is to place form field labels <em>inside</em> the fields themselves, often in light grey text. When a form field is clicked, the &#8220;hint&#8221; disappears, allowing the user to enter text. While the idea has been around for years, HTML 4 never provided an official method to add this functionality, so web developers have always had to rely on custom JavaScript solutions.</p>
<p>In recognition of the popularity of this feature, HTML5 now provides a <a href="http://diveintohtml5.org/detect.html#input-placeholder">&#8220;placeholder&#8221; attribute</a> that can be set on input fields. Now, developers can simply specify &#8220;placeholder=&#8217;whatever&#8217;&#8221; in their source code, and the browser will add the hint text automatically &#8211; no scripting involved whatsoever.</p>
<p>Of course, Safari and Chrome are the only browsers that currently recognize this new attribute (Firefox 4 will add support, as well). So, if you only use the HTML5 method, older browsers won&#8217;t get the placeholder text. And that&#8217;s where Seth Aldridge&#8217;s <a href="http://designindevelopment.com/plugins/replaceholder-jquery-plugin/">Replaceholder jQuery plugin</a> comes in &#8211; it looks for uses of the placeholder attribute in your code, and provides the functionality itself for browsers that don&#8217;t recognize it.</p>
<p>This means you can start using the HTML5 method today, and &#8211; without any changes to your HTML whatsoever &#8211; simply drop in the Replaceholder plugin to add the same functionality to older browsers. And once browser support increases to a level you&#8217;re comfortable with, just remove it. Simple, easy, brilliant.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jscariati.wordpress.com/768/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jscariati.wordpress.com/768/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jscariati.wordpress.com/768/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jscariati.wordpress.com/768/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jscariati.wordpress.com/768/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jscariati.wordpress.com/768/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jscariati.wordpress.com/768/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jscariati.wordpress.com/768/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jscariati.wordpress.com/768/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jscariati.wordpress.com/768/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jscariati.wordpress.com/768/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jscariati.wordpress.com/768/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jscariati.wordpress.com/768/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jscariati.wordpress.com/768/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=768&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jscariati.wordpress.com/2010/07/07/use-html5-placeholder-text-in-all-browsers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e7c2d2c20eee156eb26cc21ba5405b3a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jscariati</media:title>
		</media:content>
	</item>
		<item>
		<title>Apple on HTML5</title>
		<link>http://jscariati.wordpress.com/2010/06/04/apple-on-html5/</link>
		<comments>http://jscariati.wordpress.com/2010/06/04/apple-on-html5/#comments</comments>
		<pubDate>Fri, 04 Jun 2010 18:56:03 +0000</pubDate>
		<dc:creator>jscariati</dc:creator>
				<category><![CDATA[Notes]]></category>
		<category><![CDATA[Apple]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://jscariati.wordpress.com/?p=764</guid>
		<description><![CDATA[Apple has added a new section to their website promoting web standards like HTML5 and CSS3. Now, most people have no idea what HTML5 and CSS3 are, and they could care less &#8211; the ongoing &#8220;HTML5 vs. Flash&#8221; debate between web developers is irrelevant to the millions of people who are actually buying iPhones, iPods, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=764&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Apple has added a <a href="http://www.apple.com/html5/">new section</a> to their website promoting web standards like HTML5 and CSS3.</p>
<p>Now, most people have no idea what HTML5 and CSS3 are, and they could care less &#8211; the ongoing &#8220;HTML5 vs. Flash&#8221; debate between web developers is irrelevant to the millions of people who are actually <em>buying</em> iPhones, iPods, and iPads. So what&#8217;s interesting to me is the way that Apple&#8217;s taking &#8220;web standards support&#8221; and turning it into a <em>consumer</em> issue rather than a technical issue.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jscariati.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jscariati.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jscariati.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jscariati.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jscariati.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jscariati.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jscariati.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jscariati.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jscariati.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jscariati.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jscariati.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jscariati.wordpress.com/764/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jscariati.wordpress.com/764/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jscariati.wordpress.com/764/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=764&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jscariati.wordpress.com/2010/06/04/apple-on-html5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e7c2d2c20eee156eb26cc21ba5405b3a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jscariati</media:title>
		</media:content>
	</item>
		<item>
		<title>Reverse Conditional Comments</title>
		<link>http://jscariati.wordpress.com/2010/05/18/reverse-conditional-comments/</link>
		<comments>http://jscariati.wordpress.com/2010/05/18/reverse-conditional-comments/#comments</comments>
		<pubDate>Wed, 19 May 2010 01:04:39 +0000</pubDate>
		<dc:creator>jscariati</dc:creator>
				<category><![CDATA[Web Design Tutorials]]></category>
		<category><![CDATA[Browser Detection]]></category>
		<category><![CDATA[Conditional Comment]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Reverse Conditional Comment]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://jscariati.wordpress.com/?p=756</guid>
		<description><![CDATA[In one of my previous articles, Target Every Version of IE from a Single Stylesheet, commenter Greg McAusland pointed out a cool technique of using a negative conditional comment to hide code from IE while still sending it to other browsers. I&#8217;ve researched the technique a bit further, and for lack of an official term, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=756&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>In one of my previous articles, <a href="../../../2010/05/16/target-every-version-of-ie-from-a-single-stylesheet/">Target Every Version of IE from a Single Stylesheet</a>, commenter Greg McAusland pointed out a <a href="../../../2010/05/16/target-every-version-of-ie-from-a-single-stylesheet/#comment-40">cool technique</a> of using a negative conditional comment to hide code from IE while still sending it to other browsers. I&#8217;ve researched the technique a bit further, and for lack of an official term, I&#8217;m proposing the term <strong>reverse conditional comment</strong>.</p>
<p>With a normal conditional comment, the code sent to IE is hidden from other browsers:</p>
<p><pre class="brush: xml;">
&lt;!DOCTYPE html&gt;
&lt;html lang=&quot;en-US&quot;&gt;
&lt;head&gt;
	&lt;meta charset=&quot;UTF-8&quot; /&gt;
	&lt;title&gt;IE Test&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
	&lt;!--[if IE]&gt;This text will only appear in IE.&lt;![endif]--&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre></p>
<p>Since non-IE browsers don&#8217;t recognize the conditional comment syntax, they interpret a conditional comment as a regular HTML comment and ignore all of the inner text content. IE, on the other hand, parses the conditional comment and displays the text content inside of it.</p>
<p>A <strong>reverse conditional comment</strong> does the opposite &#8211; it sends code to browsers that <em>don&#8217;t</em> match the condition specified, while hiding it from the ones that do:</p>
<p><pre class="brush: xml;">
&lt;!DOCTYPE html&gt;
&lt;html lang=&quot;en-US&quot;&gt;
&lt;head&gt;
	&lt;meta charset=&quot;UTF-8&quot; /&gt;
	&lt;title&gt;IE Test&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
	&lt;!--[if !IE]&gt;&lt;!--&gt;This is not IE.&lt;!--&lt;![endif]--&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre></p>
<p>By adding the extra inner comment tags, the opening and closing tags of the conditional comment <em>itself</em> are commented out. This makes the inner text content visible again, so non-IE browsers will display:</p>
<pre>This is not IE.</pre>
<p>Meanwhile, IE <em>will</em> parse the conditional comment, but the condition &#8211; &#8220;if not IE&#8221; &#8211; will always evaluate to <em>false</em>. Therefore, IE will not display the inner text content.</p>
<p><strong>Note</strong>: even though it doesn&#8217;t seem necessary, the second <code>&lt;!</code> is included right before the first closing comment tag (<code>--&gt;</code>) in order to exclude it from the inner text content. If you don&#8217;t include this, and you&#8217;re testing for a specific version of IE&#8230;</p>
<p><pre class="brush: xml;">
&lt;body&gt;
	&lt;!--[if !IE 8]&gt;--&gt;This is not IE8.&lt;!--&lt;![endif]--&gt;
&lt;/body&gt;
</pre></p>
<p>&#8230;then when the conditional comment evaluates to <em>false</em> (in IE7, 6, etc.), those browsers will interpret the first closing comment tag as part of the inner text content, and will display this:</p>
<pre>
--&gt;This is not IE8.
</pre>
<p>For more information on this, see <a href="http://msdn.microsoft.com/en-us/library/ms537512(VS.85).aspx#ctl00_WikiContent_ctl00_History">this page on MSDN</a>.</p>
<p>By combining this with a positive conditional comment, you can run one piece of code if the browser is IE (or a certain version of IE), and a <em>different</em> piece of code if the browser is not IE. Essentially, this lets you do browser detection without JavaScript. For example:</p>
<p><pre class="brush: xml;">
&lt;!DOCTYPE html&gt;
&lt;html lang=&quot;en-US&quot;&gt;
&lt;head&gt;
	&lt;meta charset=&quot;UTF-8&quot; /&gt;
	&lt;title&gt;IE Test&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
	&lt;!--[if !IE]&gt;&lt;!--&gt;This is not IE.&lt;!--&lt;![endif]--&gt;
	&lt;!--[if IE 6]&gt;This is IE6.&lt;![endif]--&gt;
	&lt;!--[if IE 7]&gt;This is IE7.&lt;![endif]--&gt;
	&lt;!--[if IE 8]&gt;This is IE8.&lt;![endif]--&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre></p>
<p>Thanks to <a href="http://www.gregmcausland.com/">Greg McAusland</a> for making me aware of this technique!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jscariati.wordpress.com/756/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jscariati.wordpress.com/756/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jscariati.wordpress.com/756/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jscariati.wordpress.com/756/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jscariati.wordpress.com/756/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jscariati.wordpress.com/756/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jscariati.wordpress.com/756/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jscariati.wordpress.com/756/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jscariati.wordpress.com/756/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jscariati.wordpress.com/756/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jscariati.wordpress.com/756/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jscariati.wordpress.com/756/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jscariati.wordpress.com/756/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jscariati.wordpress.com/756/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=756&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jscariati.wordpress.com/2010/05/18/reverse-conditional-comments/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e7c2d2c20eee156eb26cc21ba5405b3a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jscariati</media:title>
		</media:content>
	</item>
		<item>
		<title>What Should We Do About IE6?</title>
		<link>http://jscariati.wordpress.com/2010/05/17/what-should-we-do-about-ie6/</link>
		<comments>http://jscariati.wordpress.com/2010/05/17/what-should-we-do-about-ie6/#comments</comments>
		<pubDate>Tue, 18 May 2010 02:37:20 +0000</pubDate>
		<dc:creator>jscariati</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Business]]></category>
		<category><![CDATA[Corporate]]></category>
		<category><![CDATA[IE6]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Support]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://jscariati.wordpress.com/?p=754</guid>
		<description><![CDATA[Peter Bright at Ars Technica has an article up calling for Microsoft to &#8220;stop trash-talking IE6 and just trash it.&#8221; In a nutshell, his argument is that Microsoft&#8217;s efforts to move people off of IE6 &#8211; namely by advertising the improved security of IE8 &#8211; are only skin-deep, because the company still officially supports the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=754&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Peter Bright at Ars Technica has an article up calling for Microsoft to &#8220;<a href="http://arstechnica.com/microsoft/news/2010/05/microsoft-needs-to-stop-trash-talking-ie6-and-just-trash-it.ars">stop trash-talking IE6 and just trash it</a>.&#8221; In a nutshell, his argument is that Microsoft&#8217;s efforts to move people off of IE6 &#8211; namely by advertising the improved security of IE8 &#8211; are only skin-deep, because the company still officially supports the outdated browser. Instead, he says, Microsoft should end official support, which would essentially force users to upgrade.</p>
<p>The flip side of this, of course, is that many (most?) of the IE6 installations still in use are at corporations, which likely have internal applications that only work with IE6. Business users are one of Microsoft&#8217;s core markets, so forcing out an upgrade that breaks tons of proprietary business apps makes little sense &#8211; it would do nothing other than frustrate some of Microsoft&#8217;s most important customers.</p>
<p>I&#8217;d like to propose a solution. Many web developers use a tool called <a href="http://www.my-debugbar.com/wiki/IETester/HomePage">IETester</a> for testing their site designs. It&#8217;s a free app that lets you run separate instances of IE5.5, 6, 7, 8, and even 9 beta side-by-side in a single tabbed window.</p>
<p>Now, why can&#8217;t Microsoft provide something like this with IE9? Ship the browser with the latest rendering engine enabled by default, but let users toggle the rendering engine to IE8, 7, or 6 as they see fit (in fact, IE8&#8242;s &#8220;Compatibility View&#8221; basically does this already, though it can only switch to an IE7 mode). Then, Microsoft can safely make this a <em>mandatory</em> update &#8211; if a proprietary business app breaks, that business can just switch the default engine for their IE installations to whatever they need instead. Meanwhile, the rest of the world will get the benefits of much-improved standards support and security.</p>
<p>What do you say, Microsoft?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jscariati.wordpress.com/754/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jscariati.wordpress.com/754/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jscariati.wordpress.com/754/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jscariati.wordpress.com/754/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jscariati.wordpress.com/754/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jscariati.wordpress.com/754/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jscariati.wordpress.com/754/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jscariati.wordpress.com/754/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jscariati.wordpress.com/754/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jscariati.wordpress.com/754/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jscariati.wordpress.com/754/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jscariati.wordpress.com/754/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jscariati.wordpress.com/754/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jscariati.wordpress.com/754/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=754&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jscariati.wordpress.com/2010/05/17/what-should-we-do-about-ie6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e7c2d2c20eee156eb26cc21ba5405b3a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jscariati</media:title>
		</media:content>
	</item>
		<item>
		<title>Target Every Version of IE from a Single Stylesheet</title>
		<link>http://jscariati.wordpress.com/2010/05/16/target-every-version-of-ie-from-a-single-stylesheet/</link>
		<comments>http://jscariati.wordpress.com/2010/05/16/target-every-version-of-ie-from-a-single-stylesheet/#comments</comments>
		<pubDate>Sun, 16 May 2010 19:36:22 +0000</pubDate>
		<dc:creator>jscariati</dc:creator>
				<category><![CDATA[Web Design Tutorials]]></category>
		<category><![CDATA[Conditional Comment]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://jscariati.wordpress.com/?p=745</guid>
		<description><![CDATA[Conditional comments are a great way to get around annoying IE bugs and limitations, but there&#8217;s one common frustration associated with their use &#8211; you have to maintain separate stylesheets for each version of IE that you want to target. That is, developers will usually set up something like this in the &#60;head&#62; of their [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=745&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="../../../2009/02/23/conditional-comments/">Conditional comments</a> are a great way to get around annoying IE bugs and limitations, but there&#8217;s one common frustration associated with their use &#8211; you have to maintain separate stylesheets for each version of IE that you want to target. That is, developers will usually set up something like this in the <code>&lt;head&gt;</code> of their document:</p>
<p><pre class="brush: xml;">
&lt;!--[if IE 6]&gt;&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;ie6.css&quot; /&gt;&lt;![endif]--&gt;
&lt;!--[if IE 7]&gt;&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;ie7.css&quot; /&gt;&lt;![endif]--&gt;
&lt;!--[if IE 8]&gt;&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;ie8.css&quot; /&gt;&lt;![endif]--&gt;
</pre></p>
<p>For complex sites, though, this setup gets cumbersome, because if you later spot an error in IE, you have to figure out if the source of the problem is coming from your main stylesheet or an IE-specific one. It also makes maintenance difficult, because code that needs to be applied to every version of IE has to be copied across three different stylesheets and kept in sync as updates are made.</p>
<p>But there&#8217;s a great technique to get around this, using just one stylesheet but still targeting any version of IE that you want. I take no credit for this method &#8211; I actually have no idea who came up with it first &#8211; but it comes in very handy.</p>
<p>Basically, instead of using conditional comments to load unique stylesheets, use them to add a special <code>&lt;div&gt;</code> around the entirety of your document:</p>
<p><pre class="brush: xml;">
&lt;!--[if IE 6]&gt;
	&lt;div id=&quot;ie6&quot;&gt;
&lt;![endif]--&gt;
		&lt;div id=&quot;content&quot;&gt;
			&lt;div id=&quot;main&quot;&gt;&lt;/div&gt;
			&lt;div id=&quot;sidebar&quot;&gt;&lt;/div&gt;
		&lt;/div&gt;
		&lt;div id=&quot;footer&quot;&gt;&lt;/div&gt;
&lt;!--[if IE 6]&gt;
	&lt;/div&gt;
&lt;![endif]--&gt;
</pre></p>
<p>Then, you can target IE6, for example, simply by prepending a selector in your stylesheet with <code>#ie6</code>:</p>
<p><pre class="brush: css;">
#main {background: white;}
#ie6 #main {background: black;}
</pre></p>
<p>The #ie6 styles will always take precedence over the regular styles, because they&#8217;re &#8220;weighted&#8221; more (two elements with an ID in the selector versus one, in the above example). And as an added benefit, you can now see your IE-specific styles <em>right next to</em> your regular styles, making debugging and maintenance a lot easier.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/jscariati.wordpress.com/745/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/jscariati.wordpress.com/745/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/jscariati.wordpress.com/745/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/jscariati.wordpress.com/745/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/jscariati.wordpress.com/745/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/jscariati.wordpress.com/745/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/jscariati.wordpress.com/745/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/jscariati.wordpress.com/745/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/jscariati.wordpress.com/745/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/jscariati.wordpress.com/745/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/jscariati.wordpress.com/745/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/jscariati.wordpress.com/745/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/jscariati.wordpress.com/745/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/jscariati.wordpress.com/745/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=jscariati.wordpress.com&amp;blog=8783451&amp;post=745&amp;subd=jscariati&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://jscariati.wordpress.com/2010/05/16/target-every-version-of-ie-from-a-single-stylesheet/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/e7c2d2c20eee156eb26cc21ba5405b3a?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">jscariati</media:title>
		</media:content>
	</item>
	</channel>
</rss>
