<?xml version="1.0" encoding="utf-8"?>
			
			<rss version="2.0">
			<channel>
			<title>Two Nine Media :: The Personal Studio of Joe Gautreau - CSS</title>
			<link>http://www.twoninemedia.com/blog/index.cfm</link>
			<description>The blog/website of Two Nine Media, the personal studio of Joe Gautreau.  Here you will find samples of my work, with scattered things about my family and life.  Enjoy!</description>
			<language>en-us</language>
			<pubDate>Sat, 04 Sep 2010 18:06:35 -0400</pubDate>
			<lastBuildDate>Mon, 23 Jun 2008 17:40:00 -0400</lastBuildDate>
			<generator>BlogCFC</generator>
			<docs>http://blogs.law.harvard.edu/tech/rss</docs>
			<managingEditor>joe@twoninemedia.com</managingEditor>
			<webMaster>joe@twoninemedia.com</webMaster>
			
			
			
			
			
			<item>
				<title>CFUnited: The Power Of CSS</title>
				<link>http://www.twoninemedia.com/blog/index.cfm/2008/6/23/CFUnited-The-Power-Of-CSS</link>
				<description>
				
				&lt;a name=&quot;0&quot;&gt;&lt;/a&gt;
&lt;p&gt;
	I told those in my sessions that I would be posting my presentation from &lt;a href=&quot;http://www.cfunited.com&quot; target=&quot;_blank&quot;&gt;CFUnited 2008&lt;/a&gt; so here is the online version as well as a zip file for download.  By the way... this has turned out to be my longest blog post ever!
&lt;/p&gt;
&lt;p&gt;
	&lt;a href=&quot;http://twoninemedia.com/gallery/powerofcss/ThePowerOfCSS.zip&quot;&gt;Click here to download the zip file of the presentation with the Harvard example included.&lt;/a&gt;  So, let&apos;s get started!
&lt;/p&gt;
&lt;p&gt;
	Many developers don&apos;t know it, but table-based website layouts can slow down load times by over &lt;strong style=&quot;color: red;&quot;&gt;30%&lt;/strong&gt;!  Why?  Because they are burdened down with tables which isn&apos;t as efficient as CSS-based layouts.
&lt;/p&gt;
&lt;h3&gt;Quick Disclaimer&lt;/h3&gt;
&lt;p&gt;
	Tables are &lt;strong style=&quot;color: red;&quot;&gt;&lt;u&gt;not bad&lt;/u&gt;&lt;/strong&gt;!  Actually tables are very useful and beneficial, when used in their proper place.  In fact, they can look good too, when styled with CSS.
&lt;/p&gt;
&lt;p&gt;
	&lt;strong&gt;What is their proper place?&lt;/strong&gt;  Tabular data display.
&lt;/p&gt;
	As a matter of fact... &lt;a href=&quot;http://www.w3.org&quot; target=&quot;_blank&quot;&gt;www.w3.org&lt;/a&gt; recommends the following.  &lt;strong&gt;Tables should not be used purely as a means to layout document content&lt;/strong&gt; as this may present problems when rendering to non-visual media. Additionally, when used with graphics, these tables may force users to scroll horizontally to view a table designed on a system with a larger display.  &lt;strong&gt;To minimize these problems, authors should use style sheets to control layout&lt;/strong&gt; rather than tables.
&lt;/p&gt;
&lt;h3&gt;Let&apos;s Take A Look At The Benefits&lt;/h3&gt;
&lt;p&gt;
	&lt;ol&gt;
    	&lt;li&gt;&lt;a href=&quot;#1&quot;&gt;Beauty - It&apos;s more than just skin deep.&lt;/a&gt;&lt;/li&gt;
        &lt;li&gt;&lt;a href=&quot;#2&quot;&gt;Accessibility&lt;/a&gt;&lt;/li&gt;
        &lt;li&gt;&lt;a href=&quot;#3&quot;&gt;Search Engine Optimization&lt;/a&gt;&lt;/li&gt;
        &lt;li&gt;&lt;a href=&quot;#4&quot;&gt;Size - Put HTML on a diet.&lt;/a&gt;&lt;/li&gt;
        &lt;li&gt;&lt;a href=&quot;#5&quot;&gt;Speed&lt;/a&gt;&lt;/li&gt;
        &lt;li&gt;&lt;a href=&quot;#6&quot;&gt;Flexibility - My personal favorite.&lt;/a&gt;&lt;/li&gt;
        &lt;li&gt;&lt;a href=&quot;#7&quot;&gt;Proof of Concept - The Harvard University Example&lt;/a&gt;&lt;/li&gt;
    &lt;/ol&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name=&quot;1&quot;&gt;Benefit 1: Beauty&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;
	My personal motto is this... &quot;&lt;strong&gt;If the solution is not beautiful, then it&apos;s wrong!&lt;/strong&gt;&quot;  CSS is the right solution.  Beauty isn&apos;t always on the surface.  With CSS the beauty is not only without but within.  Knowing that you didn&apos;t take the cheesy, easy way out is beauty in itself.  Someone may never know but you get the satisfaction within knowing you did it right!
&lt;/p&gt;
&lt;p&gt;
	&quot;&lt;strong&gt;A lazy developer, is a bad developer.&lt;/strong&gt;&quot;  If you don&apos;t want to take the time to properly learn CSS it amounts to nothing more than laziness.  Sure, table-based layouts are easy, but they are not right.  Integrity is what you do when no one is watching.  Do the right thing, not the easy thing!
&lt;/p&gt;
&lt;p&gt;
	CSS also has many outwardly beautiful characteristics.  Such as building roll-over menus, and fly-out menus, without using bulky pieces of JavaScript and numerous images.
&lt;/p&gt;
&lt;p&gt;
	&lt;a href=&quot;#0&quot;&gt;Back to Top&lt;/a&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name=&quot;2&quot;&gt;Benefit 2: Accessibility&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;
	CSS separates document structure from presentation.  Sort of MVC in a design kind of way.
&lt;/p&gt;
&lt;p&gt;
	People with disabilities use alternative browsers such as screen readers, mobile phones, speech output browsers, braille browsers and text browsers.  &lt;strong&gt;Using alternate browsing methods on table-based web sites can prove to be a painful experience.&lt;/strong&gt;
&lt;/p&gt;
&lt;p&gt;
	Table-based layouts often are &quot;broken&quot; in some browsers.
&lt;/p&gt;
&lt;p&gt;
	CSS-based layouts allow the display of main content first while the graphics load afterwards.
&lt;/p&gt;
&lt;p&gt;
	Graphic intense sites or those that employ elements that prove inaccessible to disabled users can put CSS to good work by placing all these elements at the bottom of the source code. This way, normal browsers will render the layout properly for normal users, letting them enjoy the visuals while alternate browsers will easily render the simplified, informational content to disabled users.
&lt;/p&gt;
&lt;p&gt;
	CSS can be used to load different styles based on the screen type, when using tables this is nearly impossible to do cleanly.
&lt;/p&gt;
&lt;p&gt;
	There is a more consistent cross-browser experience when using CSS.
&lt;/p&gt;
&lt;p&gt;
	&lt;a href=&quot;#0&quot;&gt;Back to Top&lt;/a&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name=&quot;3&quot;&gt;Benefit 3: Search Engine Optimization&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;
	Search engines spiders are lethargic, they don&apos;t parse through tons of HTML code to get the indexed code, in doing so this reduces the spiders results.
&lt;/p&gt;
&lt;p&gt;
	Cleaner, more light-weight code produces better SEO rankings.
&lt;/p&gt;
&lt;p&gt;
	Search engines such as Google, Yahoo and MSN love light-weighted web pages where content is more visible than code.
&lt;/p&gt;
&lt;p&gt;
	The better text to code ratio on your web pages, the better your SEO chances are.  More content less HTML.  With tables extra, bulky HTML is created that decreases SEO chances.
&lt;/p&gt;
&lt;p&gt;
	&lt;a href=&quot;#0&quot;&gt;Back to Top&lt;/a&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name=&quot;4&quot;&gt;Benefit 4: Size - Less Is More&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;
	Put HTML on a diet.  CSS-based layouts are generally smaller than their table-based counterparts.  The bulky HTML code filled with markup is not necessary when using CSS.
&lt;/p&gt;
&lt;p&gt;
	When CSS is used properly, websites can often use fewer images and little if any JavaScript.
&lt;/p&gt;
&lt;p&gt;
	CSS-based layouts can decrease HTML file size by over &lt;strong style=&quot;color: red;&quot;&gt;40%&lt;/strong&gt; in comparison to table-based layouts.
&lt;/p&gt;
&lt;p&gt;
	&lt;a href=&quot;#0&quot;&gt;Back to Top&lt;/a&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name=&quot;5&quot;&gt;Benefit 5: Speed&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;
	CSS-based layouts download faster than table-based layouts.  Browsers read through tables &lt;strong style=&quot;color: red;&quot;&gt;TWICE&lt;/strong&gt; before dumping it&apos;s contents.  The first iteration is to read the table structure, the second to read the content.
&lt;/p&gt;
&lt;p&gt;
	When using CSS the browser stores a copy of the CSS file upon it&apos;s first load, tables must be parsed and loaded with each page load.
&lt;/p&gt;
&lt;p&gt;
	CSS-based layouts have an average of &lt;strong style=&quot;color: red;&quot;&gt;50%&lt;/strong&gt; faster load times than that of table-based layouts.
&lt;/p&gt;
&lt;p&gt;
	&lt;a href=&quot;#0&quot;&gt;Back to Top&lt;/a&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name=&quot;6&quot;&gt;Benefit 6: Flexibility&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;
	The ability to use one HTML document, and generate an unlimited amount of different layouts.  A good demonstration of how this is done can be found at &lt;a href=&quot;http://www.cssZenGarden.com&quot; target=&quot;_blank&quot;&gt;www.cssZenGarden.com&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
	Create JavaScript like navigations with pure CSS.
&lt;/p&gt;
&lt;p&gt;
	Redesigns become much easier saving time and labor.  All changes can be done in one file, instead of going to multiple files to make repetitive changes.
&lt;/p&gt;
&lt;p&gt;
	With a table-based layout you are locked into a layout, whereas with CSS you are not!
&lt;/p&gt;
&lt;p&gt;
	The ability to manage the order in which items are downloaded (ie: content prior to images).
&lt;/p&gt;
&lt;center&gt;&lt;img src=&quot;http://twoninemedia.com/gallery/powerofcss/flexibility.jpg&quot; width=&quot;575&quot; height=&quot;370&quot;&gt;&lt;br&gt;&lt;strong&gt;A Quick Example...  One codebase, multiple look-n-feel&apos;s.&lt;/strong&gt;&lt;/center&gt;
&lt;p&gt;
	&lt;a href=&quot;#0&quot;&gt;Back to Top&lt;/a&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name=&quot;7&quot;&gt;Proof of Concept - The Harvard University Example&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;
	So what better way is there to show this concept of using CSS rather than tables to layout your website than by using a real-life example.  Que the music... Enter Harvard University (Circa Mar. 2008).  The have a nice looking website as you can see below, but scroll down and we&apos;ll see if we can&apos;t make website run a bit better.
&lt;/p&gt;
&lt;center&gt;&lt;img src=&quot;http://twoninemedia.com/gallery/powerofcss/harvardSite.jpg&quot; width=&quot;575&quot; height=&quot;687&quot;&gt;&lt;/center&gt;
&lt;p&gt;
	So, what we are going to do, is take this website, and take it through the &quot;CSS Machine&quot; and see how it improves.
&lt;/p&gt;
&lt;p&gt;
	&lt;strong&gt;Step 1:&lt;/strong&gt; Create a local working copy of the Harvard University website from &lt;a href=&quot;http://www.harvard.edu&quot; target=&quot;_blank&quot;&gt;www.harvard.edu&lt;/a&gt;, by saving the HTML, cleaning it up and removing contents, manually downloading a local copy of all images used on the site, change all links to reference pound signs, and voila, we have a local running copy of Harvard University&apos;s website tables and all.  &lt;a href=&quot;http://twoninemedia.com/gallery/powerofcss/harvardTables/index.html&quot; target=&quot;_blank&quot;&gt;Click here to view the original Harvard University website with tables.&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
	&lt;strong&gt;Step 2:&lt;/strong&gt; Get the specs on the original website.
    &lt;ul&gt;
    	&lt;li&gt;15 Tables&lt;/li&gt;
        &lt;li&gt;25KB Page Size (Not large, but we can condense it even more)&lt;/li&gt;
        &lt;li&gt;372 Lines of Code&lt;/li&gt;
        &lt;li&gt;73 Objects/Files&lt;/li&gt;
        &lt;li&gt;Javascript Rollovers&lt;/li&gt;
        &lt;li&gt;Images used as links (Bad for SEO)
    &lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;
	&lt;strong&gt;Step 3:&lt;/strong&gt; Develop a CSS template that fits the Harvard University look-n-feel.
&lt;p&gt;
	&lt;strong&gt;Step 4:&lt;/strong&gt; Section by section begin to plug in content, redo the navigation with pure CSS (no Javascript), etc...  All the while validating the CSS and XHTML every step of the way.
&lt;/p&gt;
&lt;p&gt;
	We now have a complete redesign of the Harvard University website.  The look-n-feel didn&apos;t change, but what we did change was the nuts-n-bolts of the website.  We modified how it was built, and presented from within.  &lt;a href=&quot;http://twoninemedia.com/gallery/powerofcss/harvardCSS/index.html&quot; target=&quot;_blank&quot;&gt;Click here to view the all new table-LESS Harvard University website built using pure CSS for layout.&lt;/a&gt;
&lt;/p&gt;
&lt;h4&gt;Side-By-Side Comparision&lt;/h4&gt;
&lt;p&gt;
	So now let us put the two layouts side-by-side to see if this &quot;theory&quot; of doing away with tables for layout can be substantiated.
&lt;/p&gt;
&lt;p&gt;
	&lt;strong&gt;Speed Differences:&lt;/strong&gt;
    &lt;br&gt;
    &lt;img src=&quot;http://twoninemedia.com/gallery/powerofcss/speedTests.jpg&quot; width=&quot;575&quot; height=&quot;194&quot; style=&quot;padding: 5px 0px;&quot;&gt;
    &lt;br&gt;
    All speed tests were run 5 times for each version of the website and the average was taken.  The tests from &lt;a href=&quot;http://www.WebSiteOptimization.com&quot; target=&quot;_blank&quot;&gt;WebSiteOptimization.com&lt;/a&gt; were not used in the overall average calculations due to the fact that their calculations were based off of a size-based formula, not an actual test.
&lt;/p&gt;
&lt;p&gt;
	&lt;strong&gt;Final Comparison:&lt;/strong&gt;
    &lt;br&gt;
    &lt;img src=&quot;http://twoninemedia.com/gallery/powerofcss/finalComparison.jpg&quot; width=&quot;575&quot; height=&quot;211&quot; style=&quot;padding: 5px 0px;&quot;&gt;
&lt;/p&gt;
&lt;h4&gt;So, What Did We Accomplish?&lt;/h4&gt;
&lt;p&gt;
	&lt;ul&gt;
    	&lt;li&gt;We trimmed some fat to the tune of 48%&lt;/li&gt;
        &lt;li&gt;We increased our load times by over 50%&lt;/li&gt;
        &lt;li&gt;We made it prettier on inside&lt;/li&gt;
        &lt;li&gt;We made it much more flexible for future alterations&lt;/li&gt;
        &lt;li&gt;We made it more accessible&lt;/li&gt;
        &lt;li&gt;We made it more SEO friendly&lt;/li&gt;
    &lt;/ul&gt;
&lt;/p&gt;
&lt;h3&gt;Wrap&lt;/h3&gt;
&lt;p&gt;
	I really hope you enjoyed this blog post.  I have become a very strong proponent of using CSS when developing websites because of the many benefits above.  I was asked by a couple of folks if I had taken these findings to &lt;strong&gt;Harvard University&lt;/strong&gt; to see if perhaps they may be interested in change.  The answer is no!  Maybe they&apos;ll come across this blog post and make the change for themselves.  Thanks for reading!
&lt;/p&gt;
				
				</description>
						
				
				<category>Goog Feed</category>				
				
				<category>CSS</category>				
				
				<category>General</category>				
				
				<category>CFUnited 2008</category>				
				
				<pubDate>Mon, 23 Jun 2008 17:40:00 -0400</pubDate>
				<guid>http://www.twoninemedia.com/blog/index.cfm/2008/6/23/CFUnited-The-Power-Of-CSS</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>CFUnited: Off To Washington D.C.</title>
				<link>http://www.twoninemedia.com/blog/index.cfm/2008/6/16/CFUnited-Off-To-Washington-DC</link>
				<description>
				
				Well, tomorrow morning bright an early I leave for Washington D.C. for a ColdFusion conference at which I&apos;ll be speaking on &quot;The Power of CSS&quot;.  I am excited and nervous all at the same time.  Wondering if my presentation will be valuable, sufficient and timely, but excited about things I may learn and all that goes with experience of taking a trip.

I&apos;ll be blogging daily about the conference and the trip, posting pictures and musings about the things I experience on a daily basis while I am there.

Today, my wife LeeAnn has been running about trying to get some last minute things together before I leave.  I&apos;m going to miss LeeAnn and the kids while I&apos;m gone, but it will work out for good.  The kids have already been asking if I was going to bring them back t-shirts like I did last time.

I picked up a new lens for my camera while I am there, which I will blog about shortly, it&apos;s an Nikon 18-200mm VR Nikkor lens which gives me great range when I am out exploring D.C. so I am looking forward to getting some great shots with it.

Well, here goes nothin&apos;.  Stay tuned for more...
				
				</description>
						
				
				<category>Goog Feed</category>				
				
				<category>CSS</category>				
				
				<category>General</category>				
				
				<category>ColdFusion</category>				
				
				<category>Photography</category>				
				
				<category>CFUnited 2008</category>				
				
				<pubDate>Mon, 16 Jun 2008 16:59:00 -0400</pubDate>
				<guid>http://www.twoninemedia.com/blog/index.cfm/2008/6/16/CFUnited-Off-To-Washington-DC</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>I&apos;m Speechless!</title>
				<link>http://www.twoninemedia.com/blog/index.cfm/2007/11/30/Im-Speechless</link>
				<description>
				
				&lt;p&gt;
The title says it all, so I&apos;ll write about it instead.  I found out yesterday from Liz at &lt;a href=&quot;http://www.teratech.com/&quot; target=&quot;_blank&quot;&gt;Teratech&lt;/a&gt; that I was picked by the &lt;a href=&quot;http://www.teratech.com/&quot; target=&quot;_blank&quot;&gt;Teratech&lt;/a&gt; team to be one of the speakers at &lt;a href=&quot;http://cfunited.com/&quot; target=&quot;_blank&quot;&gt;CFUnited 2008&lt;/a&gt; in Washington D.C.
&lt;/p&gt;
&lt;p&gt;
I am honored, nervous, and humbled to be chosen to speak at this awesome event.  I feel that there are many people out there who are far better than me, but I look forward with a nervous excitement to this opportunity!
&lt;/p&gt;
&lt;p&gt;
I will be speaking on &lt;a href=&quot;http://cfunited.com/go/topics/2008#topic-1491&quot; target=&quot;_blank&quot;&gt;The Power of CSS&lt;/a&gt;, including tabled layouts vs. css layouts and why CSS is a far better solution for web development.  I have blogged in the past about the speed differences of the two which you can see &lt;a href=&quot;http://www.twoninemedia.com/blog/index.cfm/2007/4/19/TabledLayoutsvsCSSLayouts&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;.  If you are going to &lt;a href=&quot;http://cfunited.com/&quot; target=&quot;_blank&quot;&gt;CFUnited&lt;/a&gt;, I look forward to seeing you there!  If not, you can register &lt;a href=&quot;https://secure.teratech.com/cfunited08/register.cfm&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;, don&apos;t forget today is the last day for the special early bird rate!
&lt;/p&gt;
&lt;p&gt;
See you in D.C. :)
&lt;/p&gt;
				
				</description>
						
				
				<category>Goog Feed</category>				
				
				<category>CSS</category>				
				
				<category>General</category>				
				
				<category>ColdFusion</category>				
				
				<category>CFUnited 2008</category>				
				
				<pubDate>Fri, 30 Nov 2007 03:09:00 -0400</pubDate>
				<guid>http://www.twoninemedia.com/blog/index.cfm/2007/11/30/Im-Speechless</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>The Tortoise &amp; the Hare: Tables vs CSS for Layout</title>
				<link>http://www.twoninemedia.com/blog/index.cfm/2007/4/19/TabledLayoutsvsCSSLayouts</link>
				<description>
				
				First of all let me begin by saying, I am in love with CSS!  For those of you who don&apos;t know, CSS is used to control the style and format of a web page.  From one CSS file you can control the font attributes, layout attributes, table standards, etc... for an entire site, all in one spot!  But I digress...

The reason for this post is to show the speed of CSS-based-layouts over table-based-layouts.  Why should one go with CSS design when developing a website/web application?  See below...
&lt;div class=&quot;floatright&quot; style=&quot;width: 275px&quot;&gt;
&lt;strong&gt;Pitfalls of Tables&lt;/strong&gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;-&amp;nbsp;&amp;nbsp;Less Accessible&lt;br&gt;
&amp;nbsp;&amp;nbsp;-&amp;nbsp;&amp;nbsp;Harder to maintain visual consistiency&lt;br&gt;
&amp;nbsp;&amp;nbsp;-&amp;nbsp;&amp;nbsp;Increased file sizes which eats bandwidth&lt;br&gt;
&amp;nbsp;&amp;nbsp;-&amp;nbsp;&amp;nbsp;Much slower than CSS&lt;br&gt;
&lt;/div&gt;
&lt;strong&gt;Benefits of CSS&lt;/strong&gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;-&amp;nbsp;&amp;nbsp;Accessability&lt;br&gt;
&amp;nbsp;&amp;nbsp;-&amp;nbsp;&amp;nbsp;Flexibility&lt;br&gt;
&amp;nbsp;&amp;nbsp;-&amp;nbsp;&amp;nbsp;Functionality&lt;br&gt;
&amp;nbsp;&amp;nbsp;-&amp;nbsp;&amp;nbsp;Lower Hosting Costs&lt;br&gt;
&amp;nbsp;&amp;nbsp;-&amp;nbsp;&amp;nbsp;Efficient, Less Expensive Redesigns&lt;br&gt;
&amp;nbsp;&amp;nbsp;-&amp;nbsp;&amp;nbsp;Better Search Engine Optimization (SEO) results&lt;br&gt;
&amp;nbsp;&amp;nbsp;-&amp;nbsp;&amp;nbsp;Speed&lt;br&gt;

&lt;div class=&quot;floatright&quot; style=&quot;width: 350px&quot;&gt;
	&lt;a href=&quot;http://www.twoninemedia.com/css_vs_html/css/&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://www.twoninemedia.com/gallery/whyCSS/whyCSSPic.jpg&quot; width=&quot;350&quot; height=&quot;334&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;br /&gt;&lt;center&gt;&lt;strong&gt;Sample web layout used for this experiment.&lt;/strong&gt;&lt;/center&gt;
&lt;/div&gt;
&lt;strong&gt;Speed Test&lt;/strong&gt;&lt;br&gt;
But, for the moment let&apos;s focus on the overwhelming speed difference between the two.  I created a sample web layout in Photoshop, and gave the file to a co-worker of mine (&lt;a href=&quot;http://www.dougboude.com&quot; target=&quot;_blank&quot;&gt;Doug Boude&lt;/a&gt;) who laid the design out with tables.  I also took the file and laid it out with CSS, it took us both about 15-20 mins to lay it out in our given formats.

All of our images were the same size for this test and his HTML file was actually smaller than mine!  I then uploaded the files to my server, which can be viewed here (&lt;a href=&quot;http://www.twoninemedia.com/css_vs_html/css&quot; target=&quot;_blank&quot;&gt;CSS Layout&lt;/a&gt; and &lt;a href=&quot;http://www.twoninemedia.com/css_vs_html/html&quot; target=&quot;_blank&quot;&gt;Table Layout&lt;/a&gt;) and ran them through a &lt;a href=&quot;http://www.websiteoptimization.com/services/analyze/&quot; target=&quot;_blank&quot;&gt;Web Page Analyzer&lt;/a&gt; at &lt;a href=&quot;http://www.websiteoptimization.com&quot; target=&quot;_blank&quot;&gt;websiteoptimization.com&lt;/a&gt;, the results were amazing!

&lt;strong&gt;Results&lt;/strong&gt;&lt;br&gt;
The CSS-based layout was &lt;strong&gt;33% FASTER&lt;/strong&gt; than the table-based layout on a T1 connection, and &lt;strong&gt;59% FASTER&lt;/strong&gt; on a 56K connection.

The CSS-based layout had no &quot;cautions&quot; or &quot;warnings&quot;.  The table-based layout had a &quot;Total Size Caution&quot; and a &quot;Image Size Warning&quot; even though we used the same image sizes and same amount of images.  The total size of the CSS-based page load was 14007 bytes while the table-based page load was 37593 bytes, a &lt;strong&gt;62% DIFFERENCE&lt;/strong&gt;!

&lt;strong&gt;Final Thoughts&lt;/strong&gt;&lt;br&gt;
Now, don&apos;t get me wrong, I like tables, I think they are very useful, but only in their proper place.  They were designed for data display and I still use them for that myself if I have tabular data for instance that I need to display.  But, for layout and design of a website / web application, there is no question that CSS is the way to go for many different reasons.

So, my final question to you is this...  If someone came to you and said &quot;I can make your website run 33% faster&quot;, what would you say???


&lt;em&gt;*Speed results will vary depending on site content/layout.  Not all results will be 33% faster, some will be less and some will be more.&lt;/em&gt;
				
				</description>
						
				
				<category>Goog Feed</category>				
				
				<category>CSS</category>				
				
				<category>General</category>				
				
				<category>Design</category>				
				
				<pubDate>Thu, 19 Apr 2007 16:55:00 -0400</pubDate>
				<guid>http://www.twoninemedia.com/blog/index.cfm/2007/4/19/TabledLayoutsvsCSSLayouts</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Coming Soon - Site Redesign</title>
				<link>http://www.twoninemedia.com/blog/index.cfm/2006/11/13/Coming-Soon--Site-Redesign</link>
				<description>
				
				TwoNineMedia will be launching it&apos;s new and improved website sometime within the next few weeks.  The new site will feature a complete CSS layout with BlogCFC redesigned to fit the new look and feel.

&lt;strong&gt;12/6/06 - Update:&lt;/strong&gt;  It&apos;s coming give me another week or two!
				
				</description>
						
				
				<category>CSS</category>				
				
				<category>General</category>				
				
				<category>Design</category>				
				
				<pubDate>Mon, 13 Nov 2006 19:52:00 -0400</pubDate>
				<guid>http://www.twoninemedia.com/blog/index.cfm/2006/11/13/Coming-Soon--Site-Redesign</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>CSS: Building Navigations From Unordered Lists</title>
				<link>http://www.twoninemedia.com/blog/index.cfm/2006/8/25/CSS-Navigation-Building-Beautiful-Navigations-From-Unordered-Lists</link>
				<description>
				
				So, you have an unordered list that you want to look pretty, huh?  Well, I ran into this problem here at work a little while back, and it was requested I share the solution with all.

&lt;strong&gt;Problem:&lt;/strong&gt;

We were (and still are) building a web app, where the navigation would be dynamic based on the user and their permissions, and each nav item could have children under it, sub-items.  So we needed to come up with a CSS solution to the problem with a tad bit of JavaScript to make IE happy.

Now, we used a recursive function to query the database for all of the nav items for a user with their children, and possibly their children&apos;s children and so on, and when we looped through this result set with ColdFusion, here was a look alike of the nav html that was generated.

&lt;code&gt;
&lt;div id=&quot;nav2&quot;&gt;
&lt;ul id=&quot;nav2&quot;&gt;
  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Home&lt;/a&gt;&lt;/li&gt;
  &lt;li class=&quot;sectionparent&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;sectionparent&quot;&gt;About&lt;/a&gt;
    &lt;ul&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;History&lt;/a&gt;&lt;/li&gt;
      &lt;li class=&quot;sectionparent&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;sectionparent&quot;&gt;Team&lt;/a&gt;
		&lt;ul&gt;
		  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;First Team&lt;/a&gt;&lt;/li&gt;
		  &lt;li class=&quot;sectionparent&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;sectionparent&quot;&gt;Second Team&lt;/a&gt;
			&lt;ul&gt;
			  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Joe&lt;/a&gt;&lt;/li&gt;
			  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Doug&lt;/a&gt;&lt;/li&gt;
			  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Bill&lt;/a&gt;&lt;/li&gt;
			&lt;/ul&gt;
		  &lt;/li&gt;
		  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Third Team&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	  &lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Offices&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li class=&quot;sectionparent&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;sectionparent&quot;&gt;Services&lt;/a&gt;
    &lt;ul&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;First Service&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Second Service&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Third Service&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Fourth Service&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li class=&quot;sectionparent&quot;&gt;&lt;a href=&quot;#&quot; class=&quot;sectionparent&quot;&gt;Contact Us&lt;/a&gt;
    &lt;ul&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;First Location&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Second Location&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Third Location&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Fourth Location&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/code&gt;

Which looks like this displayed:

&lt;div id=&quot;nav2&quot;&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Home&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;About&lt;/a&gt;
    &lt;ul&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;History&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Team&lt;/a&gt;
		&lt;ul&gt;
		  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;First Team&lt;/a&gt;&lt;/li&gt;
		  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Second Team&lt;/a&gt;
			&lt;ul&gt;
			  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Joe&lt;/a&gt;&lt;/li&gt;
			  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Doug&lt;/a&gt;&lt;/li&gt;
			  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Bill&lt;/a&gt;&lt;/li&gt;
			&lt;/ul&gt;
		  &lt;/li&gt;
		  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Third Team&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;
	  &lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Offices&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Services&lt;/a&gt;
    &lt;ul&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;First Service&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Second Service&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Third Service&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Fourth Service&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Contact Us&lt;/a&gt;
    &lt;ul&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;First Location&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Second Location&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Third Location&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;#&quot;&gt;Fourth Location&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;

&lt;strong&gt;Solution:&lt;/strong&gt;

So what I did was go out on the net and try to find something to fix this problem, and found this solution.

First of all, you will notice that the unordered list has an ID as well as the list item and anchor tag having a class where there are children.  With that accomplished, now we just need two more things.  Number one some CSS to make it look pretty and secondly a behavior file for IE.

&lt;strong&gt;CSS:&lt;/strong&gt;

&lt;code&gt;
body{
	behavior: url(csshover.htc); /* For IE */
}

#nav ul, #nav ul ul {
	margin: 0px;
	padding: 0px;
	width: 150px; /* Width of Menu Items */
	border-bottom: 1px solid #FD5095;
	background: #FC1571;
	font-size: 12px;
	}

#nav ul li {
	font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif;
	font-size:12px;
	font-weight:normal;
	position: relative;
	list-style: none;
	padding: 0px;
	}

#nav ul li a {
	display: block;
	text-indent: 5px;
	text-decoration: none;
  	color:#ffffff;
	padding: 5px 0px 5px 0px;
	border: 0px;
	border-top: 1px solid #FD5095;
	zborder-left: 18px solid #FD5095;
	width: 150px;
	}

#nav ul li a:hover {
	zborder-left: 18px solid #FD5095;
	background-color: #FD73AA;
	}
	
#nav ul ul {
	position: absolute;
	display: none;
	left: 150px;
	top: 0px;
	background:#FC1571;
	}

#nav ul li ul li a {
	padding: 5px 0px 5px 0px;
	}

/* Sub Menu Styles */

#nav ul li:hover ul ul, #nav ul li:hover ul ul ul, #nav ul li li li:hover ul {
	display: none; /* Hide sub-menus initially */
	}

#nav ul li:hover ul, #nav ul li li:hover ul, #nav ul li li li:hover ul { 
	display: block;
	}

#nav ul li a.sectionparent{
	background: transparent url(navArrow.gif) right center no-repeat;
	}

#nav ul li a.sectionparent:hover{
	background: #FD73AA url(navArrow.gif) right center no-repeat;
	}

#nav ul li a:hover{
	color: #ffffff;
	}

/* Fix IE. Hide from IE Mac */

* html #nav ul li {
	float: left;
	height: 1%;
	}
	
* html #nav ul li a {
	height: 1%;
	}

/* End Fix */
&lt;/code&gt;

&lt;strong&gt;Behavior File:&lt;/strong&gt;

&lt;a href=&quot;http://www.twoninemedia.com/gallery/css_nav/csshover.htc&quot;&gt;Click here to download the htc behavior file.&lt;/a&gt;

&lt;strong&gt;Final Result:&lt;/strong&gt;

&lt;a href=&quot;http://www.twoninemedia.com/gallery/css_nav/index.html&quot; target=&quot;blank&quot;&gt;Click Here To See A Live Demo!&lt;/a&gt;

&lt;a href=&quot;http://www.twoninemedia.com/gallery/css_nav/index.html&quot; target=&quot;blank&quot;&gt;&lt;img src=&quot;http://www.twoninemedia.com/gallery/css_nav/nav_example.jpg&quot;&gt;&lt;/a&gt;

This has been very useful for me, I hope it helps you as well!
				
				</description>
						
				
				<category>Goog Feed</category>				
				
				<category>CSS</category>				
				
				<category>Design</category>				
				
				<pubDate>Fri, 25 Aug 2006 14:48:00 -0400</pubDate>
				<guid>http://www.twoninemedia.com/blog/index.cfm/2006/8/25/CSS-Navigation-Building-Beautiful-Navigations-From-Unordered-Lists</guid>
				
			</item>
			
		 	
			
			
			<item>
				<title>Where Have All The Tables Gone?</title>
				<link>http://www.twoninemedia.com/blog/index.cfm/2006/8/22/Where-Have-All-The-Tables-Gone</link>
				<description>
				
				I have been in the web world for around 5 years now, and when I first learned how to build a web page, my layouts were based on HTML tables.  Now thanks to Cascading Style Sheets (which are nothing new) I have practically abandoned tables and now design with strictly CSS.

I used to fear CSS.  I would look at a style sheet and think that tables were so much better.  Until a few years ago, I figured out that you could create some nifty little rollovers with just an HTML anchor tag and a bit of CSS.  Before I used to create rollover images in Photoshop and slice them up creating nifty rollovers which took forever to load.

CSS is all about freedom, optimization, beauty and ease of future manageability.  With CSS you can change the look of a site quickly from one look and feel to another with the swapping out of a style sheet.  No more going through pages of code and HTML to try to swap out all of the image names and possibly reposition things, CSS allows you to do all this cleaner, quicker, and all from one file.

&lt;strong&gt;Case In Point&lt;/strong&gt;

At work we are developing a completely web-based totally configurable web enrollment system for the health care industry.  Part of my task thus far have been to create the look and feel for the application.  This app will be used by multiple clients, and each client will most likely want their own look and feel to the app, not a logo change, but an entire look and feel.
&lt;center&gt;
&lt;img src=&quot;http://www.twoninemedia.com/gallery/css/css_html.jpg&quot;&gt;

&lt;img src=&quot;http://www.twoninemedia.com/gallery/css/1.jpg&quot;&gt;

&lt;img src=&quot;http://www.twoninemedia.com/gallery/css/2.jpg&quot;&gt;

&lt;img src=&quot;http://www.twoninemedia.com/gallery/css/3.jpg&quot;&gt;
&lt;/center&gt;
Here is my crack at a little illustration showing the power of css.  One HTML document or set of code, you don&apos;t touch it at all, you just apply different style sheets and layout your page totally different based on the CSS not the HTML.
&lt;center&gt;
&lt;img src=&quot;http://www.twoninemedia.com/gallery/css/css_example.jpg&quot;&gt;
&lt;/center&gt;
Pretty neat huh?  You can see this in real action at the &lt;a href=&quot;http://www.csszengarden.com&quot; target=&quot;blank&quot;&gt;CSS Zen Garden&lt;/a&gt;.
				
				</description>
						
				
				<category>Goog Feed</category>				
				
				<category>CSS</category>				
				
				<category>Design</category>				
				
				<pubDate>Tue, 22 Aug 2006 18:51:00 -0400</pubDate>
				<guid>http://www.twoninemedia.com/blog/index.cfm/2006/8/22/Where-Have-All-The-Tables-Gone</guid>
				
			</item>
			
		 	
			</channel></rss>