<?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>Blue Angel</title>
	<atom:link href="http://www.blueangel.co.za/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.blueangel.co.za</link>
	<description>Just another WordPress site</description>
	<lastBuildDate>Fri, 18 Feb 2011 23:07:44 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.5</generator>
		<item>
		<title>Holy Grail 3 column layout without using float</title>
		<link>http://www.blueangel.co.za/2011/02/holy-grail-3-column-layout-without-using-float/</link>
		<comments>http://www.blueangel.co.za/2011/02/holy-grail-3-column-layout-without-using-float/#comments</comments>
		<pubDate>Fri, 18 Feb 2011 23:07:44 +0000</pubDate>
		<dc:creator>blueangel</dc:creator>
				<category><![CDATA[Tips & Tricks]]></category>

		<guid isPermaLink="false">http://www.blueangel.co.za/?p=67</guid>
		<description><![CDATA[Yes. You read the post title correctly. It is not a mistake. The technique outlined below exists, and it&#8217;s cross-browser compatible (with the obligatory tweak or two for our dear friend Internet Explorer, of course). No more pesky clearing of floats. It&#8217;s CSS layout nirvana. And it&#8217;s here today. First, the markup (borrowed from here) [...]]]></description>
			<content:encoded><![CDATA[<p>Yes. You read the post title correctly. It is not a mistake. The technique outlined below exists, and it&#8217;s cross-browser compatible (with the obligatory tweak or two for our dear friend Internet Explorer, of course). No more pesky clearing of floats. It&#8217;s CSS layout nirvana. And it&#8217;s here today.</p>
<p><span id="more-67"></span></p>
<p>First, the markup (borrowed from <a href="http://www.alistapart.com/articles/holygrail/">here</a>)</p>

<div class="wp_syntax"><div class="code"><pre class="html4strict"><span class="sc2">&lt;<a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a> <span class="kw3">id</span><span class="sy0">=</span><span class="st0">&quot;header&quot;</span>&gt;</span>header<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a>&gt;</span>
<span class="sc2">&lt;<a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a> <span class="kw3">id</span><span class="sy0">=</span><span class="st0">&quot;container&quot;</span>&gt;</span>
	<span class="sc2">&lt;<a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a> <span class="kw3">class</span><span class="sy0">=</span><span class="st0">&quot;sidebar&quot;</span>&gt;</span>
		<span class="sc2">&lt;<a href="http://december.com/html/4/element/h1.html"><span class="kw2">h1</span></a>&gt;</span>sidebar<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/h1.html"><span class="kw2">h1</span></a>&gt;</span>
		<span class="sc2">&lt;<a href="http://december.com/html/4/element/ul.html"><span class="kw2">ul</span></a>&gt;</span>
			<span class="sc2">&lt;<a href="http://december.com/html/4/element/li.html"><span class="kw2">li</span></a>&gt;</span>link one<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/li.html"><span class="kw2">li</span></a>&gt;</span>
			<span class="sc2">&lt;<a href="http://december.com/html/4/element/li.html"><span class="kw2">li</span></a>&gt;</span>link two<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/li.html"><span class="kw2">li</span></a>&gt;</span>
		<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/ul.html"><span class="kw2">ul</span></a>&gt;</span>
	<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a>&gt;</span>
	<span class="sc2">&lt;<a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a> <span class="kw3">id</span><span class="sy0">=</span><span class="st0">&quot;content&quot;</span>&gt;</span>
		<span class="sc2">&lt;<a href="http://december.com/html/4/element/h1.html"><span class="kw2">h1</span></a>&gt;</span>content<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/h1.html"><span class="kw2">h1</span></a>&gt;</span>
		<span class="sc2">&lt;<a href="http://december.com/html/4/element/p.html"><span class="kw2">p</span></a>&gt;</span>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Phasellus varius eleifend.<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/p.html"><span class="kw2">p</span></a>&gt;</span>
		<span class="sc2">&lt;<a href="http://december.com/html/4/element/p.html"><span class="kw2">p</span></a> <span class="kw3">class</span><span class="sy0">=</span><span class="st0">&quot;last&quot;</span>&gt;</span>Donec euismod. Praesent mauris mi, adipiscing non, mollis eget, adipiscing ac, erat. Integer nonummy mauris sit.<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/p.html"><span class="kw2">p</span></a>&gt;</span>
	<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a>&gt;</span>
	<span class="sc2">&lt;<a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a> <span class="kw3">class</span><span class="sy0">=</span><span class="st0">&quot;sidebar&quot;</span>&gt;</span>
		<span class="sc2">&lt;<a href="http://december.com/html/4/element/h1.html"><span class="kw2">h1</span></a>&gt;</span>sidebar<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/h1.html"><span class="kw2">h1</span></a>&gt;</span>
		<span class="sc2">&lt;<a href="http://december.com/html/4/element/ul.html"><span class="kw2">ul</span></a>&gt;</span>
			<span class="sc2">&lt;<a href="http://december.com/html/4/element/li.html"><span class="kw2">li</span></a>&gt;</span>link one<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/li.html"><span class="kw2">li</span></a>&gt;</span>
			<span class="sc2">&lt;<a href="http://december.com/html/4/element/li.html"><span class="kw2">li</span></a>&gt;</span>link two<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/li.html"><span class="kw2">li</span></a>&gt;</span>
		<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/ul.html"><span class="kw2">ul</span></a>&gt;</span>
	<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a>&gt;</span>
<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a>&gt;</span>
<span class="sc2">&lt;<a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a> <span class="kw3">id</span><span class="sy0">=</span><span class="st0">&quot;footer&quot;</span>&gt;</span>footer<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/div.html"><span class="kw2">div</span></a>&gt;</span></pre></div></div>

<p>Strictly speaking, the wrapper div isn&#8217;t needed, except in my example outlined below, I&#8217;m using a modified version of the Man In Blue&#8217;s excellent <a href="http://www.themaninblue.com/writing/perspective/2005/08/29/">FooterStickAlt</a> to ensure a full-page layout, even with the smallest amount of content. It&#8217;s also a handy element to have around should you wish to use a <a href="http://www.alistapart.com/articles/fauxcolumns/">full-length background</a> to ensure the appearance of equal height columns with varying content height.</p>
<p>Now normally, the next step would be to float the sidebars and the center column, right? And then clear the float on the container div, right? No sirree, we&#8217;re going to be using the oft-overlooked display: inline-block which, ever since Firefox 3 was released, became a viable option for site layout. But I suppose front-end developers have gotten used to using floats to achieve multi-column layouts, even though it&#8217;s not really the right tool for the job. If you think about it, floats are really for image elements and pull quotes, designed to have text &#8220;float&#8221; around it.</p>
<p>The W3C defines an inline-block element as an element that behaves like a block element when it comes to padding, borders and margin, and its descendant elements all see it as such but behaves like an inline element to its sibling and ancestor elements. Neato.</p>
<p>Let&#8217;s start off slowly with our CSS:</p>

<div class="wp_syntax"><div class="code"><pre class="css">body <span class="br0">&#123;</span>
	<span class="kw1">width</span><span class="sy0">:</span> <span class="re3">960px</span><span class="sy0">;</span>
	<span class="kw1">margin</span><span class="sy0">:</span> <span class="nu0">0</span> <span class="kw2">auto</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re0">#header</span><span class="sy0">,</span> <span class="re0">#footer</span> <span class="br0">&#123;</span>
	<span class="kw1">background</span><span class="sy0">:</span> orange<span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re0">#content</span><span class="sy0">,</span> <span class="re1">.sidebar</span> <span class="br0">&#123;</span>
	<span class="kw1">display</span><span class="sy0">:</span> inline-<span class="kw2">block</span><span class="sy0">;</span>
	<span class="kw1">vertical-align</span><span class="sy0">:</span> <span class="kw1">top</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re0">#content</span> <span class="br0">&#123;</span>
	<span class="kw1">background</span><span class="sy0">:</span> pink<span class="sy0">;</span>
	<span class="kw1">width</span><span class="sy0">:</span> <span class="re3">60%</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re1">.sidebar</span> <span class="br0">&#123;</span>
	<span class="kw1">background</span><span class="sy0">:</span> <span class="kw2">yellow</span><span class="sy0">;</span>
	<span class="kw1">width</span><span class="sy0">:</span> <span class="re3">20%</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re0">#footer</span> <span class="br0">&#123;</span>
	<span class="kw1">background</span><span class="sy0">:</span> <span class="kw1">blue</span><span class="sy0">;</span>
	<span class="kw1">color</span><span class="sy0">:</span> <span class="re0">#FFF</span><span class="sy0">;</span>
<span class="br0">&#125;</span></pre></div></div>

<p>Of course, no self respecting CSS technique would exist if it didn&#8217;t break IE in some way or another, so without further ado, here is what&#8217;s needed to get Redmond&#8217;s browser to behave:</p>

<div class="wp_syntax"><div class="code"><pre class="css"><span class="sy0">*</span> html <span class="re0">#header</span><span class="sy0">,</span> <span class="sy0">*</span> html <span class="re0">#footer</span> <span class="br0">&#123;</span>
	<span class="kw1">height</span><span class="sy0">:</span> <span class="re3">7.5em</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re0">#content</span><span class="sy0">,</span> <span class="re1">.sidebar</span> <span class="br0">&#123;</span>
	<span class="kw1">display</span><span class="sy0">:</span> <span class="kw2">inline</span><span class="sy0">;</span>
	zoom<span class="sy0">:</span> <span class="nu0">1</span><span class="sy0">;</span>
<span class="br0">&#125;</span></pre></div></div>

<p>If you are super keen to try out this technique and you&#8217;ve copied &#038; pasted the above code and run it in your browser, you&#8217;re probably wondering why the elements aren&#8217;t lining up neatly like they should. And rightly so. That is because inline elements are affected by white space within the HTML document. And therein lies the rub.</p>
<p>But all is not lost. There are basically two approaches to solving this&#8230; &#8220;fixing&#8221; the HTML by removing the white space between the inline-block elements, or adding a smidgeon of additional CSS to achieve the same effect. Admittedly here I wasn&#8217;t the one who invented this method &#8211; I found it <a href="http://www.onderhond.com/blog/work/inline-block-vs-float">here</a> and decided to try and see if instead of only using it for <a href="http://blog.mozilla.com/webdev/2009/02/20/cross-browser-inline-block/">image galleries</a> and <a href="http://csswizardry.com/2011/01/create-a-centred-horizontal-navigation/">horizontally centred navigation</a>, it could be used for laying out an entire page.</p>
<p>Basically, what we&#8217;re going to be doing, is removing white space in our parent element (in this case, #container) and putting it back in each of the child elements (each of the elements that have display set to inline-block). A little bit of experimentation led me to see that most browsers will be happy with eliminating word-spacing, but Webkit-based browsers (essentially Safari and Chrome) needed to have letter-spacing removed instead.</p>

<div class="wp_syntax"><div class="code"><pre class="css"><span class="re0">#container</span> <span class="br0">&#123;</span>
	<span class="kw1">word-spacing</span><span class="sy0">:</span> <span class="re3">-4px</span><span class="sy0">;</span> <span class="coMULTI">/* IE, Firefox, Opera */</span>
	<span class="kw1">letter-spacing</span><span class="sy0">:</span> <span class="re3">-4px</span><span class="sy0">;</span> <span class="coMULTI">/* Webkit */</span>
<span class="br0">&#125;</span>
<span class="re0">#content</span><span class="sy0">,</span> <span class="re1">.sidebar</span> <span class="br0">&#123;</span>
	<span class="kw1">word-spacing</span><span class="sy0">:</span> <span class="kw2">normal</span><span class="sy0">;</span> <span class="coMULTI">/* IE, Firefox, Opera */</span>
	<span class="kw1">letter-spacing</span><span class="sy0">:</span> <span class="kw2">normal</span><span class="sy0">;</span> <span class="coMULTI">/* Webkit */</span>
<span class="br0">&#125;</span></pre></div></div>

<p>At this point, everything should be working quite nicely. You can stop at this point, and have a fully working layout.</p>
<p>Adding the sticky footer is an added bonus. Here&#8217;s what you&#8217;ll need:</p>

<div class="wp_syntax"><div class="code"><pre class="css">html<span class="sy0">,</span> body <span class="br0">&#123;</span>
	<span class="kw1">height</span><span class="sy0">:</span> <span class="re3">100%</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
html <span class="br0">&#123;</span>
	<span class="kw1">background</span><span class="sy0">:</span> <span class="kw2">green</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
body <span class="br0">&#123;</span>
	<span class="kw1">width</span><span class="sy0">:</span> <span class="re3">960px</span><span class="sy0">;</span>
	<span class="kw1">margin</span><span class="sy0">:</span> <span class="nu0">0</span> <span class="kw2">auto</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re0">#container</span> <span class="br0">&#123;</span>
	<span class="kw1">word-spacing</span><span class="sy0">:</span> <span class="re3">-4px</span><span class="sy0">;</span> <span class="coMULTI">/* IE, Firefox, Opera */</span>
	<span class="kw1">letter-spacing</span><span class="sy0">:</span> <span class="re3">-4px</span><span class="sy0">;</span> <span class="coMULTI">/* Webkit */</span>
<span class="br0">&#125;</span>
<span class="re0">#content</span><span class="sy0">,</span> <span class="re1">.sidebar</span> <span class="br0">&#123;</span>
	<span class="kw1">word-spacing</span><span class="sy0">:</span> <span class="kw2">normal</span><span class="sy0">;</span> <span class="coMULTI">/* IE, Firefox, Opera */</span>
	<span class="kw1">letter-spacing</span><span class="sy0">:</span> <span class="kw2">normal</span><span class="sy0">;</span> <span class="coMULTI">/* Webkit */</span>
<span class="br0">&#125;</span>
<span class="re0">#header</span><span class="sy0">,</span> <span class="re0">#footer</span> <span class="br0">&#123;</span>
	<span class="kw1">min-height</span><span class="sy0">:</span> <span class="re3">7.5em</span><span class="sy0">;</span>
	<span class="kw1">background</span><span class="sy0">:</span> orange<span class="sy0">;</span>
	<span class="kw1">width</span><span class="sy0">:</span> <span class="re3">100%</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re0">#content</span><span class="sy0">,</span> <span class="re1">.sidebar</span> <span class="br0">&#123;</span>
	<span class="kw1">display</span><span class="sy0">:</span> inline-<span class="kw2">block</span><span class="sy0">;</span>
	<span class="kw1">vertical-align</span><span class="sy0">:</span> <span class="kw1">top</span><span class="sy0">;</span>
	<span class="kw1">padding</span><span class="sy0">:</span> <span class="re3">9em</span> <span class="nu0">0</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re0">#content</span> <span class="br0">&#123;</span>
	<span class="kw1">background</span><span class="sy0">:</span> pink<span class="sy0">;</span>
	<span class="kw1">width</span><span class="sy0">:</span> <span class="re3">60%</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re1">.sidebar</span> <span class="br0">&#123;</span>
	<span class="kw1">background</span><span class="sy0">:</span> <span class="kw2">yellow</span><span class="sy0">;</span>
	<span class="kw1">width</span><span class="sy0">:</span> <span class="re3">20%</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re0">#header</span> <span class="br0">&#123;</span>
	<span class="kw1">margin-bottom</span><span class="sy0">:</span> <span class="re3">-7.5em</span><span class="sy0">;</span>
	<span class="kw1">position</span><span class="sy0">:</span> <span class="kw2">relative</span><span class="sy0">;</span>
	<span class="kw1">z-index</span><span class="sy0">:</span> <span class="nu0">10</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re0">#container</span> <span class="br0">&#123;</span>
	<span class="kw1">position</span><span class="sy0">:</span> <span class="kw2">relative</span><span class="sy0">;</span>
	<span class="kw1">z-index</span><span class="sy0">:</span> <span class="nu0">0</span><span class="sy0">;</span>
	<span class="kw1">min-height</span><span class="sy0">:</span> <span class="re3">100%</span><span class="sy0">;</span>
<span class="br0">&#125;</span>
<span class="re0">#footer</span> <span class="br0">&#123;</span>
	<span class="kw1">background</span><span class="sy0">:</span> <span class="kw1">blue</span><span class="sy0">;</span>
	<span class="kw1">color</span><span class="sy0">:</span> <span class="re0">#FFF</span><span class="sy0">;</span>
	<span class="kw1">margin-top</span><span class="sy0">:</span> <span class="re3">-7.5em</span><span class="sy0">;</span>
<span class="br0">&#125;</span></pre></div></div>

<p>And add this in your IE CSS for IE 6 (because it doesn&#8217;t understand min-height, and instead interprets height to behave like min-height):</p>

<div class="wp_syntax"><div class="code"><pre class="css"><span class="sy0">*</span> html <span class="re0">#container</span> <span class="br0">&#123;</span>
	<span class="kw1">height</span><span class="sy0">:</span> <span class="re3">100%</span><span class="sy0">;</span>
<span class="br0">&#125;</span></pre></div></div>

<p>And that should be that. Comments welcome.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blueangel.co.za/2011/02/holy-grail-3-column-layout-without-using-float/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My mobile phones over the last 14 years</title>
		<link>http://www.blueangel.co.za/2010/11/my-mobile-phones-over-the-last-14-years/</link>
		<comments>http://www.blueangel.co.za/2010/11/my-mobile-phones-over-the-last-14-years/#comments</comments>
		<pubDate>Sun, 14 Nov 2010 21:20:31 +0000</pubDate>
		<dc:creator>blueangel</dc:creator>
				<category><![CDATA[Gadgets]]></category>
		<category><![CDATA[gadget]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[phone]]></category>

		<guid isPermaLink="false">http://www.blueangel.co.za/?p=49</guid>
		<description><![CDATA[I recently upgraded my mobile phone. Some might say this is hardly newsworthy; for me, however, it was quite a big deal because for the fist time in about a decade, I&#8217;d be moving away from the Finnish mobile giant Nokia. I&#8217;d been a devout fan of the Espoo-based handset manufacturer since I owned my [...]]]></description>
			<content:encoded><![CDATA[<p>I recently upgraded my mobile phone. Some might say this is hardly newsworthy; for me, however, it was quite a big deal because for the fist time in about a decade, I&#8217;d be moving away from the Finnish mobile giant Nokia. I&#8217;d been a devout fan of the Espoo-based handset manufacturer since I owned my trusty Nokia 6110. Over the years I migrated from handset to handset, each time upgrading ever so slightly to something a little better, a little more advanced. I&#8217;d like to share my experiences in owning these handsets.</p>
<p><span id="more-49"></span></p>
<h2>Alcatel One Touch Easy</h2>
<p><div id="attachment_50" class="wp-caption alignright" style="width: 210px"><a href="http://www.blueangel.co.za/wp-content/uploads/2010/11/alcatelonetouch.jpg"><img class="size-full wp-image-50" title="Alcatel One Touch Easy" src="http://www.blueangel.co.za/wp-content/uploads/2010/11/alcatelonetouch.jpg" alt="Alcatel One Touch Easy" width="200" height="147" /></a><p class="wp-caption-text">Alcatel One Touch Easy</p></div>My very first handset was, in fact, not a Nokia. It was the quintessential brick mobile phone. Hefty, sturdy, and with minimal functionality, my Alcatel One Touch Easy was my first foray into the world of mobile telephony. I never managed to quite figure out how to send an SMS, but at least I could make and receive calls with relative ease. To be fair, the coolest features of the phone was the little aerial which one would ceremoniously pull out when answering a phone call, and the fact that the 25 phone numbers you needed to know were pre-programmed into the phone memory. To this day I&#8217;m still not quite sure what happened with this phone.</p>
<h2 style="clear:both;">Nokia 6110</h2>
<p><div id="attachment_51" class="wp-caption alignright" style="width: 247px"><a href="http://www.blueangel.co.za/wp-content/uploads/2010/11/no6110_00.jpg"><img class="size-medium wp-image-51" title="Nokia 6110" src="http://www.blueangel.co.za/wp-content/uploads/2010/11/no6110_00-237x300.jpg" alt="Nokia 6110" width="237" height="300" /></a><p class="wp-caption-text">Nokia 6110</p></div>Next up was my very first Nokia &#8211; the 6110 I mentioned earlier. Man, I loved this phone. I could easily send SMS messages, I could change my operator logo, and above all, it was pretty to look at. That wonderful blue/green/purple metallic cover was just the coolest!</p>
<h2 style="clear:both;">Nokia 3210</h2>
<p><div id="attachment_52" class="wp-caption alignright" style="width: 310px"><a href="http://www.blueangel.co.za/wp-content/uploads/2010/11/nokia3210.jpg"><img class="size-medium wp-image-52" title="Nokia 3210" src="http://www.blueangel.co.za/wp-content/uploads/2010/11/nokia3210-300x186.jpg" alt="Nokia 3210" width="300" height="186" /></a><p class="wp-caption-text">Nokia 3210</p></div>Next up was the Nokia 3210. Equally sturdy, with a slightly larger screen and a space for a few more contacts on the SIM card.</p>
<h2 style="clear:both;">Nokia 7110</h2>
<p><div id="attachment_53" class="wp-caption alignright" style="width: 107px"><a href="http://www.blueangel.co.za/wp-content/uploads/2010/11/nokia7110.jpg"><img class="size-medium wp-image-53" title="Nokia 7110" src="http://www.blueangel.co.za/wp-content/uploads/2010/11/nokia7110-97x300.jpg" alt="Nokia 7110" width="97" height="300" /></a><p class="wp-caption-text">Nokia 7110</p></div>After that, I got the Nokia 7110. The extractable antenna made a not-so-welcome return, as did the slider. Using this phone, I experimented with WAP sites for the first time, but all things considered, it wasn&#8217;t all it cracked up to be, which explains why I only ever did it once.</p>
<h2 style="clear:both;">Nokia 6310i</h2>
<p><div id="attachment_54" class="wp-caption alignright" style="width: 128px"><a href="http://www.blueangel.co.za/wp-content/uploads/2010/11/421_nokia_6310i.jpg"><img class="size-medium wp-image-54" title="Nokia 6310i" src="http://www.blueangel.co.za/wp-content/uploads/2010/11/421_nokia_6310i-118x300.jpg" alt="Nokia 6310i" width="118" height="300" /></a><p class="wp-caption-text">Nokia 6310i</p></div>Next up was my Nokia 6310i. A very smart phone for it&#8217;s time with its sleek silver design, it had a beautiful light blue backlit LCD display, with 32 shades of monotone blue shades, instead of the usual single green backlit LCD display all the previous phones had. It had Java and much more storage capacity, a handy voice recorder which you could use to record conversations. I very much liked this phone.</p>
<h2 style="clear:both;">Nokia 6820</h2>
<p><div id="attachment_55" class="wp-caption alignright" style="width: 272px"><a href="http://www.blueangel.co.za/wp-content/uploads/2010/11/nokia6820.jpg"><img class="size-medium wp-image-55" title="Nokia 6820" src="http://www.blueangel.co.za/wp-content/uploads/2010/11/nokia6820-262x300.jpg" alt="Nokia 6820" width="262" height="300" /></a><p class="wp-caption-text">Nokia 6820</p></div>Next up was my first foray into what many now consider to be a &#8220;smartphone&#8221;. My very first phone with a full colour display and a full QWERTY flip-out keyboard and a camera! Although the display was quite small and the pictures were horrible quality, the immediacy of being able to take a photo and send it to someone halfway across the country via something called a &#8220;multimedia message&#8221; or MMS for short, was just phenomenal. Or, at least, the idea of it was. In reality I had to wait quite a while before anyone else I knew also had a phone which could actually receive a MMS&#8230; After a few weeks with this phone, I was turning into a real power texter, with the ability of using both thumbs to type enabling me to churn out messages rapidly and accurately.</p>
<h2 style="clear:both;">Nokia N70</h2>
<p><div id="attachment_58" class="wp-caption alignright" style="width: 310px"><a href="http://www.blueangel.co.za/wp-content/uploads/2010/11/nokia_n70.jpg"><img class="size-full wp-image-58" title="Nokia N70" src="http://www.blueangel.co.za/wp-content/uploads/2010/11/nokia_n70.jpg" alt="Nokia N70" width="300" height="295" /></a><p class="wp-caption-text">Nokia N70</p></div>My next upgrade phone was the fantastic Nokia N70. At least, that&#8217;s what I thought for a while. It was everything the 6820 wasn&#8217;t &#8211; wonderful big screen, a much better camera, a much improved user interface. Except for the QWERTY keyboard which I admittedly missed quite a bit. The ability to download and install applications (like Opera Mini, Mxit, etc) was also quite nifty. The built-in music player and FM radio was also quite awesome. However, after a while the slowness of the user interface started annoying me.</p>
<h2 style="clear:both;">Nokia N95 8GB.</h2>
<p><div id="attachment_59" class="wp-caption alignright" style="width: 186px"><a href="http://www.blueangel.co.za/wp-content/uploads/2010/11/nokia-n95-8gb-combo.jpg"><img class="size-medium wp-image-59" title="Nokia N95 8GB" src="http://www.blueangel.co.za/wp-content/uploads/2010/11/nokia-n95-8gb-combo-176x300.jpg" alt="Nokia N95 8GB" width="176" height="300" /></a><p class="wp-caption-text">Nokia N95 8GB</p></div>What a phone! All the annoyances of the N70 were nowhere to be seen on this phone. It truly felt like an evolution. More speed, more features, more megapixels on the camera, more everything. Admittedly, in the two odd years that I used this phone, I&#8217;d become slightly jaded about the concept of a smartphone, with the rise of Android powered phones, and the iPhone which was released shortly after I upgraded to the N95. I was very happy with this phone, nonetheless. My only gripe would be that almost none of the really cool applications I read about on the Internet were available for this phone because, like many other Nokia&#8217;s before and after this phone, it runs on Nokia&#8217;s own Symbian operating system &#8211; which means applications either have to be Java-based (which means they&#8217;ll be slow) or a seperate, Symbian version of said applications have to be coded. And for most companies, this isn&#8217;t a viable option. And this left me wanting.</p>
<h2 style="clear:both;">HTC Desire</h2>
<p><div id="attachment_60" class="wp-caption alignright" style="width: 205px"><a href="http://www.blueangel.co.za/wp-content/uploads/2010/11/htc-desire.jpg"><img class="size-medium wp-image-60" title="HTC Desire" src="http://www.blueangel.co.za/wp-content/uploads/2010/11/htc-desire-195x300.jpg" alt="HTC Desire" width="195" height="300" /></a><p class="wp-caption-text">HTC Desire</p></div>I&#8217;d decided early on that my next phone was going to be Android-powered. I finally decided on the HTC Desire, and to be honest, I am blown away by this phone. The advances that have been made in the smartphone arena in the last two years, are simply breathtaking. The list of talking points on this phone seem virtually endless: multi-touch touchscreen interface, voice recognition (across the board, accessible in many applications).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.blueangel.co.za/2010/11/my-mobile-phones-over-the-last-14-years/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to do image rollovers in HTML email.</title>
		<link>http://www.blueangel.co.za/2010/07/how-to-do-image-rollovers-in-html-email/</link>
		<comments>http://www.blueangel.co.za/2010/07/how-to-do-image-rollovers-in-html-email/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 19:17:02 +0000</pubDate>
		<dc:creator>blueangel</dc:creator>
				<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[email]]></category>
		<category><![CDATA[html]]></category>

		<guid isPermaLink="false">http://www.blueangel.co.za/?p=1</guid>
		<description><![CDATA[A while back I was asked to do an HTML email with an active state rollover image. At first I thought it was impossible, since we all know it&#8217;s impossible. You can&#8217;t embed Flash movies or videos in HTML email, right? (although you can attach them, of course). I discovered a technique to embed image [...]]]></description>
			<content:encoded><![CDATA[<p>A while back I was asked to do an HTML email with an active state rollover image. At first I thought it was impossible, since we all know it&#8217;s impossible. You can&#8217;t embed Flash movies or videos in HTML email, right? (although you can attach them, of course).</p>
<p>I discovered a technique to embed image rollovers in HTML emails by using a mix of old school and new school technologies. Since JavaScript in email clients is disabled (at least all desktop and decent web versions like Gmail), that is out of the question.</p>
<p><span id="more-1"></span>If you thought standards compliance for web browsers was a tough nut to crack, don&#8217;t even get me started on HTML/CSS support for email clients. It really is a hundred times worse, with Lotus Notes being the Internet Explorer 6 of email clients. The method described below will not work across every email client, I did try to employ the principles of graceful degradation and as such in email clients that don&#8217;t quite understand what&#8217;s going on, the link will still work without the hover effect.</p>
<p>A lot has been written about support for CSS layouts in HTML emails, and although I have fully ditched tables for layout in web pages years ago, sadly this is not quite the case if you want your email to even remotely resemble the design the client has approved after various rounds of back and forth between designer and client.</p>
<p>Start with the basics (the &#8220;old school&#8221; part):</p>

<div class="wp_syntax"><div class="code"><pre class="html4strict"><span class="sc2">&lt;<a href="http://december.com/html/4/element/table.html"><span class="kw2">table</span></a>&gt;</span>
    <span class="sc2">&lt;<a href="http://december.com/html/4/element/tr.html"><span class="kw2">tr</span></a>&gt;</span>
        <span class="sc2">&lt;<a href="http://december.com/html/4/element/td.html"><span class="kw2">td</span></a>&gt;&lt;<a href="http://december.com/html/4/element/a.html"><span class="kw2">a</span></a> <span class="kw3">href</span><span class="sy0">=</span><span class="st0">&quot;#&quot;</span>&gt;&lt;<a href="http://december.com/html/4/element/img.html"><span class="kw2">img</span></a> <span class="kw3">src</span><span class="sy0">=</span><span class="st0">&quot;#&quot;</span> <span class="kw3">alt</span><span class="sy0">=</span><span class="st0">&quot;Link title&quot;</span> <span class="sy0">/</span>&gt;&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/a.html"><span class="kw2">a</span></a>&gt;&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/td.html"><span class="kw2">td</span></a>&gt;</span>
    <span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/tr.html"><span class="kw2">tr</span></a>&gt;</span>
<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/table.html"><span class="kw2">table</span></a>&gt;</span></pre></div></div>

<p>Do achieve the rollover, we need our linked item to be an image. The rest is going to be done with some clever CSS (the &#8220;new school&#8221; part).</p>

<div class="wp_syntax"><div class="code"><pre class="html4strict"><span class="sc2">&lt;<a href="http://december.com/html/4/element/table.html"><span class="kw2">table</span></a> <span class="kw3">id</span><span class="sy0">=</span><span class="st0">&quot;contentTable&quot;</span> <span class="kw3">border</span><span class="sy0">=</span><span class="st0">&quot;0&quot;</span> <span class="kw3">cellpadding</span><span class="sy0">=</span><span class="st0">&quot;0&quot;</span> <span class="kw3">cellspacing</span><span class="sy0">=</span><span class="st0">&quot;0&quot;</span>&gt;</span>
	<span class="sc2">&lt;<a href="http://december.com/html/4/element/tr.html"><span class="kw2">tr</span></a>&gt;</span>
		<span class="sc2">&lt;<a href="http://december.com/html/4/element/td.html"><span class="kw2">td</span></a> <span class="kw3">height</span><span class="sy0">=</span><span class="st0">&quot;25&quot;</span>&gt;</span>
			<span class="sc2">&lt;<a href="http://december.com/html/4/element/a.html"><span class="kw2">a</span></a> <span class="kw3">style</span><span class="sy0">=</span><span class="st0">&quot;background-image:url(over.gif);height:25px;display:block;&quot;</span> <span class="kw3">href</span><span class="sy0">=</span><span class="st0">&quot;example-1.html&quot;</span>&gt;</span>
				<span class="sc2">&lt;<a href="http://december.com/html/4/element/img.html"><span class="kw2">img</span></a> <span class="kw3">src</span><span class="sy0">=</span><span class="st0">&quot;http://chrysalis/simple_html_dom/test/normal.gif&quot;</span> <span class="kw3">alt</span><span class="sy0">=</span><span class="st0">&quot;Link title&quot;</span> <span class="kw3">border</span><span class="sy0">=</span><span class="st0">&quot;0&quot;</span> <span class="sy0">/</span>&gt;</span>
			<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/a.html"><span class="kw2">a</span></a>&gt;</span>
		<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/td.html"><span class="kw2">td</span></a>&gt;</span>
	<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/tr.html"><span class="kw2">tr</span></a>&gt;</span>
<span class="sc2">&lt;<span class="sy0">/</span><a href="http://december.com/html/4/element/table.html"><span class="kw2">table</span></a>&gt;</span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://www.blueangel.co.za/2010/07/how-to-do-image-rollovers-in-html-email/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

