<?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/"
	>

<channel>
	<title>Guillermo Rauch&#039;s Devthought &#187; browsers</title>
	<atom:link href="http://www.devthought.com/tag/browsers/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.devthought.com</link>
	<description></description>
	<lastBuildDate>Mon, 30 Jan 2012 16:38:59 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>An IE6 post</title>
		<link>http://www.devthought.com/2009/05/21/an-ie6-post/</link>
		<comments>http://www.devthought.com/2009/05/21/an-ie6-post/#comments</comments>
		<pubDate>Thu, 21 May 2009 11:10:37 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Client side]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[ie6]]></category>

		<guid isPermaLink="false">http://devthought.com/?p=957</guid>
		<description><![CDATA[No matter how much we all hate IE6, we never seem to agree on what&#8217;s the best way to finally get rid of it. Web designers and developers alike have realized that investing too much time and effort in fixing &#8230; <a href="http://www.devthought.com/2009/05/21/an-ie6-post/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>No matter how much we all hate IE6, we never seem to agree on what&#8217;s the best way to finally get rid of it. Web designers and developers alike have realized that investing too much time and effort in fixing its quirks is not viable from a business perspective, but they still want to reach that audience.</p>
<p>This ambivalence is what still drives people, like myself, to keep writing about the infamous browser.</p>
<p><span id="more-957"></span></p>
<h3>The tradeoff</h3>
<p>The first premise we have to take into account is best summarized by <a href="http://dowebsitesneedtolookexactlythesameineverybrowser.com/">this little website</a>. There&#8217;s only two scenarios in which you can go to great lengths to make your website look (almost) exactly the same on IE6 and the rest:</p>
<ul>
<li>You have a very big budget, and a potentially huge IE6 audience. This is the case of websites like Facebook. If you read the Javascript and CSS of their widgets, you&#8217;ll know what I mean. The tradeoff here: money invested, poor markup and hacks all around</li>
<li>Your website is just too simple. Why would you not try to fix a few CSS issues if your website is just too simple? If there&#8217;s no complex Javascript going on, and you have a nice little fixed-width website, there&#8217;s no reason why your site should look extremely different.</li>
</ul>
<h3>Mistake 1: make your site look like crap on IE6</h3>
<p>The <a href="http://forabeautifulweb.com/blog/about/universal_internet_explorer_6_css/">Universal Internet Explorer 6 CSS</a> is the first big mistake I want to talk about. The idea here is that instead of wasting time on IE6 hacks, you just use a premade stylesheet, instead of disabling styling altogether. <a href="http://forabeautifulweb.com/demo/2009/05/21/alistapart.html">This is</a> what A List Apart would look like if it was implemented.</p>
<p>This approach is flawed for a wide range of reasons:</p>
<ul>
<li>The idea behind this universal stylesheet is that disabling style would make your website look broken. However, your sites <strong>will</strong> look broken.
<ul>
<li>If you use a logo with a dark background, it&#8217;ll definitely not fit the white background the stylesheet imposes. The same goes for menus and any other graphical item that might not be ready for a white contrast.</li>
<li>If a prior version of your website or brand did work on IE6, and after a redesign you implement this, again, people will think something is really off.</li>
<li>There&#8217;s no &#8220;Universal JavaScript&#8221; solution. And as we all know, many of our scripts interact with the CSS present in the page. Disabling styling will also mean either disabling JavaScript or having to fix it for IE6 too, with the sort of hacks the universal stylesheet wanted to avoid in the first place (for example, conditional styling).</li>
</ul>
</li>
<li>It shouldn&#8217;t be black and white, there&#8217;s gray. At this time, most IE6 quirks have been perfectly documented. Most have very easy solutions: it&#8217;s almost a second-nature for me to add <code class="inline">zoom: 1</code> to clear floats. Of course, making border-radius work on IE6 can be painful, but that&#8217;s exactly what you should be doing. Don&#8217;t go for all the small details: shadows, rounded corners, transparency. Or do it if the budget and time allows it. The key here is that <em>you can still deliver your brand identity to IE6 without major efforts</em>.</li>
</ul>
<p>Developers strive to deliver an identity to all possible mediums. If they design custom iPhone versions, why can&#8217;t they streamline their stylesheet to make it look fairly good on IE? As an example, my website worked almost perfectly on IE6 with little work. However, when I triggered the rain in my clouds, it just crashed. As a result, I just disabled that particular effect.</p>
<h3>Mistake 2: not explaining the user why IE6 is bad</h3>
<p>As I was reading the comments on <a href="http://www.zeldman.com/2009/05/21/a-new-answer-to-the-ie6-question/#comments">Jeffrey Zeldman&#8217;s post</a>, I couldn&#8217;t help but be reminded of how condescending developers can be towards their users. The key here is that <em>people will switch if they understand why</em>.</p>
<p>Let&#8217;s look at some of the proposed solutions to make users switch.</p>
<ul>
<li><a href="http://css-tricks.com/ie-6-blocker-script/">IE 6 Blocker overlay</a>. Blocks content, doesn&#8217;t explain why the switch is encouraged</li>
<li><a href="http://www.pushuptheweb.com/">Push up the web</a>. Doesn&#8217;t block content, but doesn&#8217;t explain why the switch is encouraged and to top it off, it presents itself as sort of a deceiving &#8220;operating system important notice&#8221;.</li>
<li><a href="http://ie6update.com/">IE6Update</a> takes the cake. Not only does it completely imitate a Microsoft warning in a deceptive way, but chances a very high that the user itself closed a similar message box a long time ago! Remember that Microsoft itself pushed the upgrade to IE7, even through the system automated updates. To top it off, this message doesn&#8217;t remotely explain how your website is better in a modern browser, so it&#8217;s an &#8220;easy close&#8221; for your average IE6 visitor.</li>
</ul>
<h3>The correct approach</h3>
<ol>
<li>Deliver the content</li>
<li>Make your website look OK on IE6, and somewhat similar.</li>
<li><strong>Encourage</strong> the switch. If you&#8217;re looking for a universal solution for this, I would suggest placing a prominent link to <a href="http://www.quirksmode.org/upgrade.html">PPK upgrade page</a>. He presents the information in a very concise and reasonable way, that everyone can understand. The best idea, however, is to customize the message for <em>your</em> visitors. Explain why your website would be better in another browser. What they&#8217;re missing. How easier some tasks would become with better JavaScript widgets or how nicer the navigation could be.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/05/21/an-ie6-post/feed/</wfw:commentRss>
		<slash:comments>23</slash:comments>
		</item>
		<item>
		<title>Prevent caching of modified Javascript &amp; CSS assets</title>
		<link>http://www.devthought.com/2009/03/18/prevent-caching-of-modified-javascript-css-assets/</link>
		<comments>http://www.devthought.com/2009/03/18/prevent-caching-of-modified-javascript-css-assets/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 11:24:16 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Server side]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://devthought.com/?p=510</guid>
		<description><![CDATA[There&#8217;s a very useful PHP function called filemtime, that returns the timestamp of the modification time of the file. This is similar to how the HTTP 1.1 ETag header is generated. The strategy is basically to append the modification date &#8230; <a href="http://www.devthought.com/2009/03/18/prevent-caching-of-modified-javascript-css-assets/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>There&#8217;s a very useful PHP function called <a href="http://ar.php.net/filemtime">filemtime</a>, that returns the timestamp of the modification time of the file. This is similar to how the HTTP 1.1 ETag header is generated. The strategy is basically to append the modification date to the script or CSS URI in order to refresh the user&#8217;s cache when you&#8217;ve modified them.</p>
<p>This is an extract from Devthought header.php WordPress template file:</p>
<pre class='highlight ' lang="html4strict">
<link rel="stylesheet" href="<?php echo get_stylesheet_directory_uri() . '/style.css?' . filemtime(get_stylesheet_directory() . '/style.css'); ?>" type="text/css" media="screen" title="Stylesheet" charset="utf-8" />

<script type="text/javascript" charset="utf-8" src="<?php echo get_template_directory_uri() . '/js/scripts.js?' . filemtime(get_template_directory() . '/js/scripts.js'); ?>" ></script>
</pre>
<p>All you have to do is change the routes to match your files. If you&#8217;re not using wordpress, you&#8217;ll have to remove the <code class="inline">get_stylesheet_directory*</code> and <code class="inline">get_template_directory*</code> function calls and replace with your paths.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/03/18/prevent-caching-of-modified-javascript-css-assets/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Tip: High quality CSS thumbnails in IE7</title>
		<link>http://www.devthought.com/2009/03/13/tip-high-quality-css-thumbnails-in-ie7/</link>
		<comments>http://www.devthought.com/2009/03/13/tip-high-quality-css-thumbnails-in-ie7/#comments</comments>
		<pubDate>Fri, 13 Mar 2009 14:06:52 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Tumble]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[ie7]]></category>
		<category><![CDATA[tip]]></category>

		<guid isPermaLink="false">http://devthought.com/?p=475</guid>
		<description><![CDATA[IE7 supports a custom bicubic resampling mode for images. Before, resizing a 500&#215;500 image like this: would produce a horrible result in IE, with noticeably lower quality in the resized version. This is easily fixed in IE7 by applying the &#8230; <a href="http://www.devthought.com/2009/03/13/tip-high-quality-css-thumbnails-in-ie7/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>IE7 supports a custom bicubic <a href="http://msdn.microsoft.com/en-us/library/ms530822(VS.85).aspx">resampling mode</a> for images. Before, resizing a 500&#215;500 image like this:</p>
<pre class='highlight ' lang="html4strict">
<img src="pic.jpg" alt="This image is really 500x500 big" class="thumb" width="50" height="50" />
</pre>
<p>would produce a horrible result in IE, with noticeably lower quality in the resized version.</p>
<p>This is easily fixed in IE7 by applying the following property to the img tag:</p>
<pre class='highlight ' lang="css">
img.thumb { -ms-interpolation-mode: bicubic; }
</pre>
<p>Go to this <a href="/wp-content/articles/browser-resize/">demo page</a> for a Flickr picture example.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/03/13/tip-high-quality-css-thumbnails-in-ie7/feed/</wfw:commentRss>
		<slash:comments>35</slash:comments>
		</item>
		<item>
		<title>Safari 4 Beta Review</title>
		<link>http://www.devthought.com/2009/02/24/safari-4-beta-review/</link>
		<comments>http://www.devthought.com/2009/02/24/safari-4-beta-review/#comments</comments>
		<pubDate>Tue, 24 Feb 2009 19:12:04 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Desktop]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[safari]]></category>

		<guid isPermaLink="false">http://devthought.com/?p=348</guid>
		<description><![CDATA[As a Leopard user, I decided a long time ago that Safari would be my Internet browser, whereas Firefox would be my Development browser. The main reason for this was that Safari has historically had an extra care for the &#8230; <a href="http://www.devthought.com/2009/02/24/safari-4-beta-review/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>As a Leopard user, I decided a long time ago that Safari would be my Internet browser, whereas Firefox would be my Development browser. The main reason for this was that Safari has historically had an extra care for the UI, which made it better as an everyday use mac application. Today I downloaded the new beta which takes this to the next level.</p>
<p>I&#8217;ll review the key new features of Safari 4 next.</p>
<p><span id="more-348"></span></p>
<h3>Better browsing screen real state</h3>
<p><img src="http://devthought.com/wp-content/uploads/2009/02/picture-1.png" alt="picture-1" title="picture-1" width="379" height="96" class="aligncenter size-full wp-image-349" /></p>
<p>They probably got the hint for this idea from Google Chrome. But I doubt Chrome for Mac can come with a half as nifty implementation. Each tab has a handle to <a href="http://www.google.com/support/chrome/bin/answer.py?answer=95622&#038;hl=en">regroup them</a> into new windows, and the default behavior of dragging them is moving the window, which is nice.</p>
<h3>No more about:blank for new tabs</h3>
<p>This feature is called <strong>Top Sites</strong>.</p>
<p><img src="http://devthought.com/wp-content/uploads/2009/02/picture-3-300x216.png" alt="picture-3" title="picture-3" width="300" height="216" class="alignnone size-medium wp-image-352" /></p>
<p>Again, another feature that Chrome <a href="http://www.google.com/support/chrome/bin/answer.py?answer=95451&#038;hl=en">already has</a>, although Firefox was playing with the idea <a href="http://www.azarask.in/blog/post/new-tabs/">before</a>.</p>
<p>What sets Safari 4 apart is the implementation and style. It&#8217;s easy to trigger it whenever you like by clicking <img src="http://devthought.com/wp-content/uploads/2009/02/picture-2.png" alt="picture-2" title="picture-2" width="27" height="21" class="alignnone size-full wp-image-353" /> and the screenshots display takes up all the window space. The rounded display of the windows also helps you find the one you&#8217;re looking for more easily, definitely a nice optical trick.</p>
<h3>Even better for us web developers</h3>
<p>If you have used Webkit nightly you know what I&#8217;m talking about. Safari 4 includes the revamped developer tools that more or less offer what Firebug offers.</p>
<p>The CSS inspector now works exactly like Firebug&#8217;s. It displays all the declarations related to a particular element style, crossing out those that are overridden by another declaration. Hovering the element tags in the inspector adds a blue shade to the rendered element, a feature I&#8217;ve been long missing. It also seems to differentiate padding or margins in the shade.</p>
<p><img src="http://devthought.com/wp-content/uploads/2009/02/picture-5.png" alt="picture-5" title="picture-5" width="286" height="161" class="alignnone size-full wp-image-357" /></p>
<p>The live DOM HTML element editing is much niftier than Firebug&#8217;s. It does syntax highlighting, and you just have to double click what you want to edit, and only a particular section will be selected. If you just want to edit an attribute, you can do that. The same applies for the node content.</p>
<p>What is the inspector still missing? <del datetime="2009-03-10T00:18:36+00:00">A boxed representation of the element with the element, borders, padding and margins width, and a better location for the &#8220;Inspect Element&#8221; icon, which I use all the time</del>. Highlighting of the element when an attribute or its content is altered, which is a very useful Firebug feature.</p>
<h3>The conclusion</h3>
<p>The performance has also been enhanced, which you can tell immediately. The Javascript engine is one of fastest out there, and it overall works excellently for a beta.</p>
<p>While it really doesn&#8217;t have any truly innovative features, I insist that Safari succeeds at integrating what it was missing with astounding elegance. That applies for the Dev tools, the new tab bar, the tab page placeholder, the history search, and much more.</p>
<p>Maybe Safari can now become both my development and browsing platform.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/02/24/safari-4-beta-review/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Make Safari create new tabs instead of new windows</title>
		<link>http://www.devthought.com/2009/02/10/make-safari-create-new-tabs-instead-of-new-windows/</link>
		<comments>http://www.devthought.com/2009/02/10/make-safari-create-new-tabs-instead-of-new-windows/#comments</comments>
		<pubDate>Tue, 10 Feb 2009 20:40:43 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Tumble]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[tip]]></category>

		<guid isPermaLink="false">http://devthought/?p=237</guid>
		<description><![CDATA[Hate those _target=blank as much as I do ? Just run this command defaults write com.apple.Safari TargetedClicksCreateTabs -bool true Via: p@rrish blog]]></description>
			<content:encoded><![CDATA[<p>Hate those <code class="inline">_target=blank</code> as much as I do ? Just run this command</p>
<pre class='highlight ' lang="bash">
defaults write com.apple.Safari TargetedClicksCreateTabs -bool true
</pre>
<p>Via: <a href="http://rrish.org/blog/2009/02/09/force-safari-tabs/">p@rrish blog</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/02/10/make-safari-create-new-tabs-instead-of-new-windows/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Set up the perfect OS X browser testing environment</title>
		<link>http://www.devthought.com/2009/01/20/set-up-the-perfect-os-x-browser-testing-environment/</link>
		<comments>http://www.devthought.com/2009/01/20/set-up-the-perfect-os-x-browser-testing-environment/#comments</comments>
		<pubDate>Wed, 21 Jan 2009 01:57:29 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Desktop]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[osx]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://devthought/New/?p=68</guid>
		<description><![CDATA[If you&#8217;re an OS X user and a web developer, you know how difficult things can get to test your websites or scripts on Windows browsers. Some of the alternatives you might be familiar with are: Installing Windows XP and &#8230; <a href="http://www.devthought.com/2009/01/20/set-up-the-perfect-os-x-browser-testing-environment/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><a class="thumb" href="http://devthought.com/wp-content/uploads/2009/01/picture-1.png"><img src="http://devthought.com/wp-content/uploads/2009/01/picture-1-300x187.png" alt="picture-1" title="picture-1" width="300" height="187" class="alignnone size-medium wp-image-286" /></a></p>
<p>If you&#8217;re an OS X user and a web developer, you know how difficult things can get to test your websites or scripts on Windows browsers. Some of the alternatives you might be familiar with are:</p>
<ul>
<li>Installing Windows XP and <a href="http://www.parallels.com/">Parallels</a></li>
<li>Installing Windows XP and <a href="http://www.vmware.com/products/fusion/">VMWare Fusion</a></li>
<li>Installing <a href="http://darwine.sourceforge.net/">Darwine</a> and <a href="http://www.kronenberg.org/ies4osx/">IES4OSX</a></li>
</ul>
<p>Each of them has its disadvantages. The first two involve purchasing software (and the OS, if you don&#8217;t have it), and the third can turn out to be slow, crash or provide a different browsing experience.</p>
<p>After watching the screencast by <a href="http://www.10voltmedia.com/blog/2008/12/screencast-install-internet-explorer-on-osx-using-virtualbox/">Jeff Couturier</a> I finally achieved the cross-browser, cross-platform testing Nirvana. Here&#8217;s how</p>
<p><span id="more-68"></span></p>
<ol>
<li>Install an IE8 Beta Windows XP VPC with VirtualBox (<strong>IE8</strong>). Follow the instructions <a href="http://www.10voltmedia.com/blog/2008/12/screencast-install-internet-explorer-on-osx-using-virtualbox/">here</a>. Unlike the original article, we only set up one virtual machine for all our testing needs. You can use <a href="http://wakaba.c3.cx/s/apps/unarchiver.html">The Unarchiver</a> in place of 7zip.<a href="http://www.10voltmedia.com/blog/2008/12/screencast-install-internet-explorer-on-osx-using-virtualbox/"><br />
</a></li>
<li>Install <a href="http://tredosoft.com/Multiple_IE">MultipleIE </a>(<strong>IE3</strong>, <strong>IE4</strong>, <strong>IE5</strong>, <strong>IE5.5</strong> and <strong>IE6</strong>)</li>
<li>For <strong>IE7</strong>, use IE8 Tools &gt; <em>Compatibility View</em> option</li>
<li>Install <a href="http://www.apple.com/safari/">Safari</a> or <a href="http://www.google.com/chrome/index.html?hl=es">Google Chrome</a> (<strong>Webkit</strong>)</li>
<li>Install <a href="http://getfirefox.com">Firefox</a> (<strong>Gecko</strong>)</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/01/20/set-up-the-perfect-os-x-browser-testing-environment/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>YUI Browser Detection</title>
		<link>http://www.devthought.com/2009/01/01/yui-browser-detection/</link>
		<comments>http://www.devthought.com/2009/01/01/yui-browser-detection/#comments</comments>
		<pubDate>Thu, 01 Jan 2009 22:57:58 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Client side]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[yui]]></category>

		<guid isPermaLink="false">http://devthought/New/?p=19</guid>
		<description><![CDATA[To detect the User Agent in YUI, you have to examine the YAHOO.env.ua hash. The hash is populated by key-value pairs of the engine name and the engine version. For example, YAHOO.env.ua.gecko might contain a value of 1.7 or 1.8. &#8230; <a href="http://www.devthought.com/2009/01/01/yui-browser-detection/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>To detect the User Agent in YUI, you have to examine the <strong>YAHOO.env.ua</strong> hash.<br />
The hash is populated by key-value pairs of the engine name and the engine version.</p>
<p>For example, YAHOO.env.ua.gecko might contain a value of 1.7 or 1.8. If the engine is not present at all (i.e: you&#8217;re using MSIE), it evaluates to zero. This means that you can simply check like this if you want to detect any version of Gecko (Firefox):</p>
<pre class='highlight ' lang="javascript">
if(YAHOO.env.ua.gecko)) do_something()
</pre>
<p>or like this if you need to target specific versions:</p>
<pre class='highlight ' lang="javascript">
if(YAHOO.env.ua.gecko > 1.7) do_something()
</pre>
<p>The engine names are gecko, ie, opera, webkit, air and mobile. More information <a href="http://developer.yahoo.com/yui/docs/YAHOO.env.ua.html">check the API</a></p>
<p>To have YAHOO.env make sure you&#8217;re including yahoo.js in your page</p>
<pre class='highlight ' lang="javascript">
<script type="text/javascript" src="http://yui.yahooapis.com/2.6.0/build/yahoo/yahoo-min.js"></script>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2009/01/01/yui-browser-detection/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IE7 still creating problems for developers?</title>
		<link>http://www.devthought.com/2007/03/18/ie7-still-creating-problems-for-developers/</link>
		<comments>http://www.devthought.com/2007/03/18/ie7-still-creating-problems-for-developers/#comments</comments>
		<pubDate>Sun, 18 Mar 2007 21:13:30 +0000</pubDate>
		<dc:creator>Guillermo Rauch</dc:creator>
				<category><![CDATA[Client side]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[ie]]></category>

		<guid isPermaLink="false">http://devthought.com/ie7-still-creating-problems-for-developers/</guid>
		<description><![CDATA[For the last couple of years, we developers have been struggling with IE incompatibilities while creating and testing our sites. Those include the non-native support for PNG transparencies, the box model bug, and many many more. Thanks to the effort &#8230; <a href="http://www.devthought.com/2007/03/18/ie7-still-creating-problems-for-developers/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>For the last couple of years, we developers have been struggling with IE incompatibilities while creating and testing our sites. Those include the <a href="http://msdn.microsoft.com/workshop/author/filter/reference/filters/alphaimageloader.asp">non-native</a> support for PNG <a href="http://support.microsoft.com/kb/294714">transparencies</a>, the <a href="http://en.wikipedia.org/wiki/Internet_Explorer_box_model_bug">box model bug</a>, and many many more.</p>
<p>Thanks to the <a href="http://www.positioniseverything.net/explorer.html">effort</a> of <a href="http://www.quirksmode.org/bugreports/archives/explorer_windows/index.html">many</a> developers, documenting and gathering information about them, sometimes even providing workarounds, we&#8217;ve somehow managed to deal with them.</a></p>
<p>IE7, however, was supposed to solve all these bugs, and add those all missing features. Nothing could be farther from the truth. In this article I&#8217;ll highlight some of the new built-in annoyances.</p>
<p><span id="more-48"></span></p>
<h3>PNG issue solved. Or not</h3>
<p>Microsoft expert developers <a href="http://blogs.msdn.com/ie/archive/2005/04/26/412263.aspx">claimed</a> in April 26, 2005 that &#8220;<em>overall, transparent PNG support is looking quite solid in IE7, based on our tests</em>&#8220;. I&#8217;ll show you now how solid it really is.</p>
<p>I recently published an article that went through the creation of a menu which used some 32Bit transparent pngs, and if the browser didn&#8217;t support them, it&#8217;d rely on gifs. As my personal computer is a MacBook PRO, I could only test it with Safari, Firefox, and my brother&#8217;s Internet Explorer 6. I trusted IE7 developers, and I assumed that PNG would work fine with that browser. Shortly after making it to the Digg homepage, I found out that my menu wasn&#8217;t working on IE7.</p>
<p>Thanks to this miraculous <a href="http://ipinfo.info/netrenderer/">IE7 screenshots service</a>, I could see myself what IE7 was showing to my visitors. (<span style="color: green">I&#8217;ve fixed this temporarily by also serving GIFs to Internet Explorer 7 after people noticing the black background, which explains why you can currently see this problem</span>)</p>
<p><img src="http://devthought.com/wp-content/articles/ie7-sucks/comparison.png" alt="PNG on Safari and Internet Explorer 7" /></p>
<p>Yes, I can hear you scream. It&#8217;s not even the light blue color IE6 would display for a transparent PNGs. It&#8217;s <strong>black</strong>.</p>
<p>On a side note, you might have noted that the menus colors <a href="http://blogs.smugmug.com/onethumb/2007/02/14/this-is-your-mac-on-drugs/">look differently</a>.</p>
<p>A comment in the IEBlog <a href="http://blogs.msdn.com/ie/archive/2005/04/26/412263.aspx#412291">suggested</a> that setting the DPI to a value equal or higher than 120 resulted in this behavior. For the time being, I&#8217;ve resolved to switch back to transparent GIFs and curse IE7.</p>
<h3>More CSS and rendering bugs</h3>
<p>Although they&#8217;ve successfully fixed <a href="http://blogs.msdn.com/ie/archive/2005/07/29/445242.aspx">many bugs</a>, it&#8217;s still quite evident that their browser is still far from perfect.</p>
<p>This is an interesting list of sites full of IE7 bugs:</p>
<ul>
<li><a href="http://www.gtalbot.org/BrowserBugsSection/MSIE7Bugs/">43 Bugs in Internet Explorer 7</a>
<li><a href="http://www.quirksmode.org/bugreports/archives/explorer_7/index.html">73 bugs</a> from Peter Paul Koch&#8217;s Quirksmode.</li>
<li><a href="http://css.tests.free.fr/en/debugging_css_msie.php">More bugs</a></li>
</ul>
<p>Of course I haven&#8217;t verified all those myself, nor am I sure they have been fixed in the last release. But I&#8217;m certain that it&#8217;s not bug-free at all, not even its CSS support, as evidenced by many sites use of <a href="www.quirksmode.org/css/condcom.html">conditional comments</a> to introduce IE7-specific CSS rules. Looking at Digg &lt;head&gt; we find an example of this:</p>
<div class="code htmlcode">
<p class="top"><a href="#" class="seecode">Click here to see HTML code</a></p>
<p> <viewcode src="ie7-sucks/code/1.txt" />
</div>
<h3>What now?</h3>
<p>If we check some <a href="http://www.upsdell.com/BrowserNews/stat.htm">browser usage</a> <a href="http://www.w3schools.com/browsers/browsers_stats.asp">stats</a>, there&#8217;s no doubt that IE7 is already an important player. But IE6 still doubles its share, which only means that we not only have to support, struggle and deal with IE6 inefficiencies, but also with those that Microsoft has now introduced with IE7.</p>
<p>Maybe they&#8217;re still listening to our complaints, and IE7.5 will address these. I don&#8217;t really care about their products, but it&#8217;s still affecting the way we work. They&#8217;re seriously good at making everything harder everytime they release a new browser version. Yet another reason to encourage everyone <a href="http://www.getfirefox.net">switch</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.devthought.com/2007/03/18/ie7-still-creating-problems-for-developers/feed/</wfw:commentRss>
		<slash:comments>86</slash:comments>
		</item>
	</channel>
</rss>

