<?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:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Dented Reality &#187; browser</title>
	<atom:link href="http://dentedreality.com.au/tags/browser/feed/" rel="self" type="application/rss+xml" />
	<link>http://dentedreality.com.au</link>
	<description>Beau Lebens throws down his opinion on all sorts of things he doesn&#039;t know too much about.</description>
	<lastBuildDate>Tue, 07 Feb 2012 20:48:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4-alpha-19719</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>An Open Letter to IE6 for 2009</title>
		<link>http://dentedreality.com.au/2009/01/goodbye-internet-explorer-6/</link>
		<comments>http://dentedreality.com.au/2009/01/goodbye-internet-explorer-6/#comments</comments>
		<pubDate>Mon, 05 Jan 2009 22:15:44 +0000</pubDate>
		<dc:creator>Beau Lebens</dc:creator>
				<category><![CDATA[Techn(ical|ology)]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[ie6]]></category>
		<category><![CDATA[internet explorer]]></category>
		<category><![CDATA[open letter]]></category>
		<category><![CDATA[silly]]></category>

		<guid isPermaLink="false">http://dentedreality.com.au/?p=880</guid>
		<description><![CDATA[Dear Internet Explorer 6, How are you feeling? How was your New Years? Probably a bit lonely I expect, what with people deserting you left and right for your ritzy sibling, IE7, or some of the even more attractive kids on the block like Firefox, Safari and Opera. I know we&#8217;ve spent a lot of [...]]]></description>
			<content:encoded><![CDATA[<p>Dear Internet Explorer 6,</p>
<p>How are you feeling? How was your New Years? Probably a bit lonely I expect, what with people deserting you left and right for your ritzy sibling, <a href="http://www.microsoft.com/windows/downloads/ie/getitnow.mspx">IE7</a>, or some of the even more attractive kids on the block like <a href="http://www.mozilla.com/firefox/">Firefox</a>, <a href="http://www.apple.com/safari/">Safari</a> and <a href="http://www.opera.com/">Opera</a>. I know we&#8217;ve spent a lot of time together, you and I, but it&#8217;s time that I told you something that&#8217;s been on my mind for a while.</p>
<p>I don&#8217;t think we should see each other any more.</p>
<p><span id="more-880"></span>I&#8217;m not going to go easy and tell you &#8220;it&#8217;s not you, it&#8217;s me,&#8221; because that&#8217;s just not true. At all. It <strong>is</strong> you. It <strong>absolutely</strong> is you. And I know I&#8217;m not the only one that feels this way. Along with thousands of other developers, I&#8217;ve spent hour upon hour, day upon day catering to your DOMands and have had my efforts rendered amok. I can&#8217;t take it any more.</p>
<p>We developers deserve better than you. We deserve browsers that can render a document according to the standards that have been in place for <strong>years</strong> now. We deserve browsers that can handle opacity properly, via CSS and via those wonderful image files that you so happily destroy &#8211; PNGs. We deserve CSS3 support, and we deserve to not have to add hacks or additional stylesheets to cater to your every desire.</p>
<p>You&#8217;ve controlled our lives for far too long as it is, and it&#8217;s time we took a stand against you. This may come as a shock to you, but we don&#8217;t like you. We haven&#8217;t for a long time. The only reason we even spend time with you any more is because there are a lot of people out there who don&#8217;t know any better, who haven&#8217;t met your alternatives to see how much better their lives <strong>could be</strong>. They still see you as their window to the Internet, and so begrudgingly, we come back to you, time and again, spend another sleepless night, trying to please you with just the right combination of CSS hacks and dumbed-down layout.</p>
<p>Well, not me. Not anymore.</p>
<p>You&#8217;re on your own IE6. I&#8217;m through with you. Unless someone specifically forces me to ensure that something works for you, I will no longer waste my energy on you. They&#8217;ll have to pay me to do it as well. I hope that makes you feel dirty. God knows you&#8217;ve made me feel dirty for long enough.</p>
<p>Yours in disgust,</p>
<p>Beau Lebens</p>
]]></content:encoded>
			<wfw:commentRss>http://dentedreality.com.au/2009/01/goodbye-internet-explorer-6/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
	</item>
		<item>
		<title>Making Internet Explorer Behave Like a Real Browser</title>
		<link>http://dentedreality.com.au/2008/04/making-internet-explorer-behave-like-a-real-browser/</link>
		<comments>http://dentedreality.com.au/2008/04/making-internet-explorer-behave-like-a-real-browser/#comments</comments>
		<pubDate>Tue, 29 Apr 2008 17:23:31 +0000</pubDate>
		<dc:creator>Beau Lebens</dc:creator>
				<category><![CDATA[Techn(ical|ology)]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[compatibility]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[ie6]]></category>
		<category><![CDATA[ie7]]></category>

		<guid isPermaLink="false">http://wiggin.local/dev/dentedreality.com.au/?p=400</guid>
		<description><![CDATA[Recently I&#8217;ve been doing a lot of cross-browser work (IE 6 + 7, FF and Safari required to function similarly, unfortunately), and I&#8217;ve narrowed down my list of hacks/tricks to make Internet Explorer be able to actually render standards-compliant HTML in a manner remotely befitting a modern browser. Here are my list of &#8220;go-to&#8221; hacks [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I&#8217;ve been doing a lot of cross-browser work (IE 6 + 7, FF and Safari required to function similarly, unfortunately), and I&#8217;ve narrowed down my list of hacks/tricks to make Internet Explorer be able to actually render standards-compliant HTML in a manner remotely befitting a modern browser. Here are my list of &#8220;go-to&#8221; hacks which seem to fix at least 90% of rendering, layout and positioning issues in IE(6|7).</p>
<p><span id="more-400"></span></p>
<h3>Napoleon Syndrome</h3>
<p>Apparently Internet Explorer has a problem with its height. All too often, it needs to be told how tall a block element is just to render it remotely properly. Personally I like to tease IE with the fact, taunting it about its height issues by applying the smallest height property I can. The fix here is just to apply:</p>
<pre lang="css">height: 1%;</pre>
<p>to block elements that are having trouble rendering properly (or at all) and they seem to come back to life. This is generally referred to as the &#8220;<a href="http://www.positioniseverything.net/abs_relbugs.html">Holly Hack</a>&#8221; (look for that title). You may also choose to assign a specific pixel height or something else more indicative, but I don&#8217;t like to give IE the satisfaction of making me figure that out.</p>
<h3>Put IE in position</h3>
<p>You&#8217;d be surprised how many floating/positioning problems can be fixed by simply adding</p>
<pre lang="css">position: relative;</pre>
<p>to a CSS definition. Try it. It especially comes in handy when you&#8217;ve got <a href="http://snook.ca/archives/html_and_css/position_relative_overflow_ie/">overflow defined on some elements</a>, as described by Jonathan Snook over at <a href="http://snook.ca/jonathan/">snook.ca</a> (sexy site BTW).</p>
<h3>Broken CSS Attribute Parsing is Your Friend!</h3>
<p>The last pair of hacks come care of Internet Exploder&#8217;s broken CSS parsing, which does/doesn&#8217;t recognize certain attributes, despite their invalid definition. I specifically like the way that this brokenness can be &#8220;stacked&#8221; to achieve different results in different browsers. An example:</p>
<pre lang="css">#crazy-div {
position: relative;
left: 0px;
_left: 100px;
*left: 200px;
}</pre>
<p>What&#8217;s up with all the * and _ business you ask? Well it turns out that those characters are basically ignored by IE, so it will take those rules into account, even though Real Browsers won&#8217;t. So that set of rules goes something like this:</p>
<ol>
<li>position: relative; everyone understands and applies this.</li>
<li>left: 0px; all browsers get this as well, so it&#8217;s applied across the board.</li>
<li>_left: 200px; This is the <a href="http://www.wellstyled.com/css-underscore-hack.html">Underscore Hack</a>, which IE 5+ will render properly (IE 7 managed to fix this one), so IE 5 + 6 will move #crazy-div over 100px.</li>
<li>*left: 100px; Internet Explorer 7 (only) will ignore the asterisk and render this rule, so #crazy-div will be shifted 200px.</li>
</ol>
<p>So there you have a decent way to get a set of rules in place that will allow you to target certain (lame) browsers and fix up some of their rendering and positioning problems. I&#8217;m sorry that you&#8217;ll need to use these hacks, but the Internet is a messy place <img src='http://dentedreality.com.au/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://dentedreality.com.au/2008/04/making-internet-explorer-behave-like-a-real-browser/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
		<item>
		<title>Resizing Browser Windows With JavaScript</title>
		<link>http://dentedreality.com.au/2005/12/resizing-browser-windows-with-javascript/</link>
		<comments>http://dentedreality.com.au/2005/12/resizing-browser-windows-with-javascript/#comments</comments>
		<pubDate>Wed, 14 Dec 2005 01:03:00 +0000</pubDate>
		<dc:creator>Beau Lebens</dc:creator>
				<category><![CDATA[Techn(ical|ology)]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[browser window]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[resize]]></category>

		<guid isPermaLink="false">http://wiggin.local/dev/dentedreality.com.au/2005/12/resizing-browser-windows-with-javascript/</guid>
		<description><![CDATA[So here&#8217;s an annoying one &#8211; I wanted to resize my browser window automatically, after the page had loaded (in a dynamic pop-up), to meet certain size requirements (namely to match a background image). The problem that I had was that all the different browsers support different methods and properties in relation to the &#8216;viewport&#8217; [...]]]></description>
			<content:encoded><![CDATA[<p>So here&#8217;s an annoying one &#8211; I wanted to resize my browser window automatically, after the page had loaded (in a dynamic pop-up), to meet certain size requirements (namely to match a background image). The problem that I had was that all the different browsers support different methods and properties in relation to the &#8216;viewport&#8217; (visible area of the browser), so I was having trouble finding a reliable way to do this.</p>
<p>I found a <a title="View article on 'Viewport Properties'" href="http://www.quirksmode.org/viewport/compatibility.html">great breakdown</a> over at <a title="Go to quirksmode.org" href="http://www.quirksmode.org/">quirksmode.org</a>, but it didn&#8217;t actually work in Safari (2.0.2), so I found that out pretty quickly, because that&#8217;s what I&#8217;m working in. After a little playing around, I came up with the following modifications, which calculates the amount of chrome visible in the currrent window, and then takes that into account when resizing the entire window size.</p>
<p>I haven&#8217;t tested this on too much other than Safari and Firefox on a Mac, but I think it should be reasonably compatible with others.</p>
<pre>// Viewable size you want once resized
x = 600;
y = 400;

// Now set the window size for different browser types
// all except Explorer
if (self.innerHeight) {
	// Figure out the measurements
	iX = self.innerWidth;
	iY = self.innerHeight;
	oX = self.outerWidth;
	oY = self.outerHeight;

	// And resize to match the desired target
	gX = oX - iX;
	gY = oY - iY;
	window.resizeTo(x + gX, y + gY)
}
// Explorer 6 Strict Mode
else if (document.documentElement &amp;&amp; document.documentElement.clientHeight) {
	document.documentElement.clientWidth = x;
	document.documentElement.clientHeight = y;
}
// other Explorers
else if (document.body) {
	document.body.clientWidth = x;
	document.body.clientHeight = y;
}</pre>
]]></content:encoded>
			<wfw:commentRss>http://dentedreality.com.au/2005/12/resizing-browser-windows-with-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
	</item>
	</channel>
</rss>

