<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

  <title>Technicalworx</title>
  <link href="http://technicalworx.com/atom.xml" rel="self"/>
  <link href="http://technicalworx.com/"/>
  <updated>2011-09-25T13:38:21-04:00</updated>
  <id>http://technicalworx.com/</id>
  <author>
    <name>Gabriel Castro</name>
    
  </author>

  
  <entry>
    <title>Experimenting With CSS3 Multi-Column Layout</title>
    <link href="http://technicalworx.com/blog/2011/09/25/experimenting-with-css3-multi-column-layout/"/>
    <updated>2011-09-25T11:44:00-04:00</updated>
    <id>http://technicalworx.com/blog/2011/09/25/experimenting-with-css3-multi-column-layout</id>
    <content type="html">&lt;p&gt;This week I was working on a prototype layout for one of our internal tools and I decided to try out the &lt;a href=&quot;http://www.w3.org/TR/css3-multicol/&quot;&gt;CSS3 multi-column layout module&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Currently only Mozilla and Webkit support multi-column styles, but since this is an internal tool I have a greater degree of fredom in adopting &lt;a href=&quot;http://www.digital-web.com/articles/fluid_thinking/&quot;&gt;graceful degradation&lt;/a&gt; and &lt;a href=&quot;http://www.alistapart.com/articles/understandingprogressiveenhancement&quot;&gt;progressive enhancement&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;What I found out is that Firefox and Webkit have implementes the ambiguous parts of the standard very differently, resulting in some weird behaviour. A simple 4 column layout results in inconsistent UIs depending on your browser of choice.&lt;/p&gt;

&lt;!&#8211;more&#8211;&gt;


&lt;h2&gt;Firefox&lt;/h2&gt;

&lt;p&gt;Mozilla&amp;#8217;s implementation seems to have no quirks and results in a layout exactly as I&amp;#8217;d expect:&lt;/p&gt;

&lt;p&gt;&lt;img class=&#8217;center &#8217; src=&#8217;http://technicalworx.com/images/posts/multi-column-moz.png&#8217; width=&#8221; height=&#8221; alt=&#8217;Mozilla Multi-Column Layout&#8217; title=&#8217;Mozilla Multi-Column Layout&#8217;&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The columns line up at the top and bottom&lt;/li&gt;
&lt;li&gt;The bottom padding is consistent&lt;/li&gt;
&lt;li&gt;Blocks with # of elements &amp;lt; # of columns layout properly.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;Safari&lt;/h2&gt;

&lt;p&gt;Safari&amp;#8217;s implementation is not quite there as the spacing seems to vary widly:&lt;/p&gt;

&lt;p&gt;&lt;img class=&#8217;center &#8217; src=&#8217;http://technicalworx.com/images/posts/multi-column-safari.png&#8217; width=&#8221; height=&#8221; alt=&#8217;Mozilla Multi-Column Layout&#8217; title=&#8217;Mozilla Multi-Column Layout&#8217;&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The columns routinely don&amp;#8217;t line-up&lt;/li&gt;
&lt;li&gt;The bottom padding is never consistent

&lt;ul&gt;
&lt;li&gt;Affected by padding being split across columns&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Blocks with # of elements &amp;lt; # of columns don&amp;#8217;t show up in the proper columns

&lt;ul&gt;
&lt;li&gt;If only one element is present is shows up in the second column&lt;/li&gt;
&lt;li&gt;Two elements show up in column 1 &amp;amp; 3&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;Chrome&lt;/h2&gt;

&lt;p&gt;Chrome, which uses the same Webkit engine as Safari, has even worse results. I suspect they&amp;#8217;re using an older version of Webkit:&lt;/p&gt;

&lt;p&gt;&lt;img class=&#8217;center &#8217; src=&#8217;http://technicalworx.com/images/posts/multi-column-chrome.png&#8217; width=&#8221; height=&#8221; alt=&#8217;Mozilla Multi-Column Layout&#8217; title=&#8217;Mozilla Multi-Column Layout&#8217;&gt;&lt;/p&gt;

&lt;p&gt;Given that this is Webkit it exibits many of the same behaviours as Safari, with one exception:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sometimes results in elements being rendered above the column border&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;CSS3 multi-column layout is not consistent enough between Firefox and Webkit-based browsers to make the cut for graceful degradation. If your design calls for multiple columns you&amp;#8217;re better off using a CSS framework like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://blueprintcss.org/&quot;&gt;Blueprint&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://960.gs/&quot;&gt;960&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.oddbird.net/susy/&quot;&gt;Sussy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.yahoo.com/yui/grids/&quot;&gt;YUI&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

</content>
  </entry>
  
  <entry>
    <title>Technicalworx 2.0: Now With Octopress</title>
    <link href="http://technicalworx.com/blog/2011/09/24/technicalworx-2-dot-0-now-with-octopress/"/>
    <updated>2011-09-24T20:52:00-04:00</updated>
    <id>http://technicalworx.com/blog/2011/09/24/technicalworx-2-dot-0-now-with-octopress</id>
    <content type="html">&lt;p&gt;It&amp;#8217;s been quite a while since this blog was last updated, so I&amp;#8217;ve decided to start fresh and with a new focus.&lt;/p&gt;

&lt;p&gt;When I first registered this domain on July 2002, I was still a university student and this was a means to communicate with my friends. Those were the days before Facebook, Twitter, and Google+ when &lt;em&gt;blogging was social media&lt;/em&gt;. Over the past few years, as my interactions with friends moved elsewhere, this site has become stagnant and in need of a makeover.&lt;/p&gt;

&lt;!&#8211;more&#8211;&gt;


&lt;p&gt;With that in mind I decided it was time to completely ditch the previous incarnation. I&amp;#8217;ve done away with all the old content, the old &lt;a href=&quot;http://www.movabletype.org/&quot;&gt;MovableType&lt;/a&gt; setup, and all the custom PHP.&lt;/p&gt;

&lt;p&gt;Inspired by &lt;a href=&quot;http://mattgemmell.com/2011/09/12/blogging-with-octopress/&quot;&gt;Matt Gemmell&amp;#8217;s move to Octopress&lt;/a&gt;, I decided it was time to &amp;#8220;bake&amp;#8221; this site and move to a more flexible, more techy friendly system:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://octopress.org&quot;&gt;Octopress&lt;/a&gt; for publishing static HTML&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://disqus.com&quot;&gt;Disqus&lt;/a&gt; for comments&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://daringfireball.net/projects/markdown/&quot;&gt;Markdown&lt;/a&gt; for post formatting&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://pow.cx/&quot;&gt;POW&lt;/a&gt; for previewing posts&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://git-scm.com/&quot;&gt;git&lt;/a&gt; for source control&lt;/li&gt;
&lt;li&gt;Built-in integration with Twitter, Google+, and Google Analytics&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;This means that Technicalworx is now completely portable and can be moved in a matter of minutes. All I need is a simple web server!&lt;/p&gt;

&lt;p&gt;Expect the design of the site to receive a few tweaks over the next few weeks, as we&amp;#8217;re currently running with the default Octopress theme. For now enjoy the HTML5 template and mobile friend responsible layout.&lt;/p&gt;
</content>
  </entry>
  
</feed>

