<?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>t.blog, from t.nels</title>
	<atom:link href="http://tnels.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://tnels.com</link>
	<description>Now with posts!</description>
	<lastBuildDate>Tue, 13 Jul 2010 17:34:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>CSS3 and naming conventions</title>
		<link>http://tnels.com/2009/07/30/css3-and-naming-conventions/</link>
		<comments>http://tnels.com/2009/07/30/css3-and-naming-conventions/#comments</comments>
		<pubDate>Fri, 31 Jul 2009 04:45:21 +0000</pubDate>
		<dc:creator>t.nels</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[css]]></category>

		<guid isPermaLink="false">http://tnels.com/?p=54</guid>
		<description><![CDATA[At this point my web design career I have almost completely removed directories from my images folder. This is the result of using content management systems like Joomla, and the fact that I rarely have more than a handful of images in my images folder when I initially develop a site. I stopped because I [...]]]></description>
			<content:encoded><![CDATA[<p>At this point my web design career I have almost completely removed directories from my images folder. This is the result of using content management systems like Joomla, and the fact that I rarely have more than a handful of images in my images folder when I initially develop a site. I stopped because I was noticing that I was taking time to create folders like &#8220;header&#8221; and &#8220;background&#8221; to organize images, but only placing one or two images in those directories.<span id="more-54"></span></p>
<p>Instead, I began using naming conventions. Images with semantic names like &#8220;logo.png&#8221; and &#8220;navigation.png&#8221; would get their use or location in the code appended in front of them. So &#8220;logo.png&#8221; would become &#8220;header-logo.png&#8221;, &#8220;navigation.png&#8221; would become &#8220;background-navigation.png&#8221;. If you look at the source of this site you can see this in action:</p>
<pre>#wrapper {
    background: transparent url(images/background-header.jpg) center top repeat-x;
}</pre>
<h2>What does all this have to do with CSS3?</h2>
<p>Basically, I can now add new styles to images based on my naming conventions. This, of course, applies to more than just images, but this was the first use I&#8217;ve found for these that naturally fits my already established workflow.</p>
<h2>A little history: attribute selectors</h2>
<p>These selectors allow web designers to select items based on just a portion of an attribute. I imagine this was originally developed to allow CSS target the many different kinds of forms elements (you&#8217;ve got checkboxes, text, radio buttons, etc) without needing to give each one a separate class. While useful, they were only good at matching exact strings. For example, to add a red background to text inputs I just write a rule like this:</p>
<pre>input[type="text"] {
    background-color: #F00;
}</pre>
<h2>The future: substring matching attribute selectors</h2>
<p>Substring matching attribute selectors are a huge leap up from attribute selectors. They free web designers from relying on matching exact strings, making just about any tag with a selector fair game. One might also find himself using less classes/ids as a result, and it increases the semantic value of attributes. Plus it makes use of naming conventions that many of us web designers have probably been using for years.</p>
<p>I can use these naming conventions to add styles to the images, whereas in the past I would have used an id or class. For example, in the past, if I wanted all the images in the main content area of my site to float right I would have a rule like this:</p>
<pre>#content img {
    float: right;
}</pre>
<p>But then let&#8217;s say that I wanted certain images to float left to mix it up a little:</p>
<pre>#content img.left {
    float: left;
}</pre>
<p>Now I have two rules for my content images that are difficult (well not <em>that</em> difficult) to override. But if I use these new CSS3 selectors, I can write two simple rules that are &#8220;easier&#8221; to override (should the need arise):</p>
<pre>img[src*="right"] {
    float: right;
}
img[src*="left"] {
    float: left;
}</pre>
<p>The awesome part is that these CSS rules will work for either of my methods described above:</p>
<h3>Old method</h3>
<pre>&lt;img src="images/right/lion.png" alt="Lion on his back" /&gt;</pre>
<h3>New method</h3>
<pre>&lt;img src="images/right-lion.png" alt="Lion on his back" /&gt;</pre>
<h2>One last thing&#8230;</h2>
<p>Notice that I am using the * in these, that means that the string &#8220;left&#8221; or &#8220;right&#8221; can be anywhere in the src attribute. You can alternatively us ^ or $ which will look at the end of the string only, but won&#8217;t be of much use in this instance. Unless I was to place &#8220;left&#8221; or &#8220;right&#8221; at the end of the image name, but I would need to make it look like this:</p>
<h3>HTML</h3>
<pre>&lt;img src="images/lion-right.png" alt="Lion on his back" /&gt;
&lt;img src="images/lion-left.png" alt="Lion on his back" /&gt;</pre>
<h3>CSS</h3>
<pre>img[src$="right.png"] {
    float: right;
}
img[src$="left.png"] {
    float: left;
}</pre>
<p>For more on CSS2 attribute selectors, check <a href="http://webdesign.about.com/cs/css/qt/tipcssattrib.htm" target="_blank">here</a> or <a href="http://meyerweb.com/eric/css/tests/css2/sec05-08-01.htm" target="_blank">here</a>.</p>
<p>For more on <a href="http://www.css3.info/preview/attribute-selectors/" target="_blank">CSS3 substring matching attribute selectors</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://tnels.com/2009/07/30/css3-and-naming-conventions/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting more out of images</title>
		<link>http://tnels.com/2009/04/01/getting-more-out-of-images/</link>
		<comments>http://tnels.com/2009/04/01/getting-more-out-of-images/#comments</comments>
		<pubDate>Thu, 02 Apr 2009 00:42:46 +0000</pubDate>
		<dc:creator>t.nels</dc:creator>
				<category><![CDATA[design]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[user experience]]></category>

		<guid isPermaLink="false">http://tnels.com/?p=41</guid>
		<description><![CDATA[Been working a lot on trying to reduce the amount of information displayed on/around album art lately. Mostly around how to best display additional information about an album without forcing the user to go to the product page. Sometimes I am of the mind that its probably better just to force users to go to [...]]]></description>
			<content:encoded><![CDATA[<p>Been working a lot on trying to reduce the amount of information displayed on/around album art lately. Mostly around how to best display additional information about an album without forcing the user to go to the product page. Sometimes I am of the mind that its probably better just to force users to go to product pages to learn more. So I&#8217;ve been experimenting with only showing the album art and displaying additional information on interaction. Ultimately, I&#8217;m not convinced this is best for the user, but a friend sent me these two really cool jQuery plug-ins that I thought I would share.</p>
<p><a href="http://www.addfullsize.com/" target="_blank">Fullsize</a> &#8211; its a plug-in but also a plea to the W3C to implement an additional feature in html to make it easier to display thumbnail and then show the full size without javascript. I&#8217;m not convinced this is a good idea at all, but the plug-in he&#8217;s got works pretty well.</p>
<p><a href="http://buildinternet.com/2009/03/sliding-boxes-and-captions-with-jquery/" target="_blank">Sliding Boxes and Captions</a> &#8211; This one I can get behind. Slick animations while allowing the user access to additional information. I&#8217;m not for hiding everything because there&#8217;s no call to action, why would the user mouse over album art unless they know its going to do something? But there are several different ways to approach this issue, as shown in the <a href="http://buildinternet.com/live/boxes/" target="_blank">demos</a>.</p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://tnels.com/2009/04/01/getting-more-out-of-images/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IE8, its alive!</title>
		<link>http://tnels.com/2009/03/19/ie8-its-alive/</link>
		<comments>http://tnels.com/2009/03/19/ie8-its-alive/#comments</comments>
		<pubDate>Fri, 20 Mar 2009 02:48:34 +0000</pubDate>
		<dc:creator>t.nels</dc:creator>
				<category><![CDATA[browsers]]></category>
		<category><![CDATA[css]]></category>

		<guid isPermaLink="false">http://tnels.com/?p=37</guid>
		<description><![CDATA[Internet Explorer 8 came out today. The office was all a buzz, most of the conversations revolved around its lack of CSS3 support and whether or not it should start in &#8220;Standards Mode&#8221;. While all of these are valid discussions, they fail to recognize that Microsoft finally did it right for once. They built a [...]]]></description>
			<content:encoded><![CDATA[<p>Internet Explorer 8 came out today. The office was all a buzz, most of the conversations revolved around its lack of CSS3 support and whether or not it should start in &#8220;Standards Mode&#8221;. While all of these are valid discussions, they fail to recognize that Microsoft finally did it right for once. They built a browser that supports all current standards.</p>
<p>I was in the CSS3 panel at SXSWi on Sunday afternoon, and there were 3 companies on the panel: Mozilla, Opera, and IE. When the IE guy came up to speak, the first thing he said was, &#8220;I am not here to talk about IE and CSS3.&#8221; He went on to explain how IE8 had passed every test out there and was fully compliant with CSS2.1. And you know what happened? People applauded. They were friggin elated. I was expecting people to boo this poor guy out of the room. His message was really that IE is in the present now, and because of that, we can all move into the future together.</p>
<p>I think Microsoft is tired of being the whipping boy of the internet and is ready to be open with the web developer community at large, not just those that use their products. One of the major factors in the IE&#8217;s inability to move forward was being able to support old products that Microsoft had made in 90s, and I think they finally realized the segment of society still using those products has really shrunk. Oh, and their constantly shrinking market share.</p>
<p>While Microsoft may be moving in the right direction, they haven&#8217;t forced everyone to upgrade yet. IE8 is only available via download direcly from the IE website. And for those of you reading this right now who can upgrade, please do so (<a href="http://www.microsoft.com/windows/internet-explorer/default.aspx" target="_blank">here</a>). Otherwise, you might be seeing <a href="http://blog.hugsformonsters.com/post/87657240/overly-judgemental-ie6-splash-pages" target="_blank">this</a> in your browser the next time you come back.</p>
]]></content:encoded>
			<wfw:commentRss>http://tnels.com/2009/03/19/ie8-its-alive/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SXSW</title>
		<link>http://tnels.com/2009/03/17/sxsw/</link>
		<comments>http://tnels.com/2009/03/17/sxsw/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 03:11:44 +0000</pubDate>
		<dc:creator>t.nels</dc:creator>
				<category><![CDATA[internet]]></category>

		<guid isPermaLink="false">http://tnels.com/?p=35</guid>
		<description><![CDATA[Just attended SXSW Interactive for the first time. Wow, what an experience. After partying all night and some awesome morning panels, the common theme after stuffing ourselves with food during lunch was, &#8220;Damn, my brain is mush.&#8221; Plus I got to drink Paul Rudd&#8217;s beer with some new friends. Right now I am full of [...]]]></description>
			<content:encoded><![CDATA[<p>Just attended SXSW Interactive for the first time. Wow, what an experience. After partying all night and some awesome morning panels, the common theme after stuffing ourselves with food during lunch was, &#8220;Damn, my brain is mush.&#8221; Plus I got to drink <a href="http://twitter.com/search?q=paulruddsbeer" target="_blank">Paul Rudd&#8217;s beer</a> with some new friends. Right now I am full of inspiration and motivation, and I&#8217;m hoping to get everything that is in my head out in the next couple of days, so keep your eyes peeled for some updates.</p>
]]></content:encoded>
			<wfw:commentRss>http://tnels.com/2009/03/17/sxsw/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New design. New attitude?</title>
		<link>http://tnels.com/2009/02/26/new-design-new-attitude/</link>
		<comments>http://tnels.com/2009/02/26/new-design-new-attitude/#comments</comments>
		<pubDate>Thu, 26 Feb 2009 06:18:42 +0000</pubDate>
		<dc:creator>t.nels</dc:creator>
				<category><![CDATA[design]]></category>

		<guid isPermaLink="false">http://tnels.com/2009/02/26/new-design-new-attitude.html</guid>
		<description><![CDATA[Okay, spent two hours setting this thing up tonight. Gotta really start using it now. I hope I can keep up to the expectations of the 2 people who have ever looked at this site.]]></description>
			<content:encoded><![CDATA[<p>Okay, spent two hours setting this thing up tonight. Gotta really start using it now. I hope I can keep up to the expectations of the 2 people who have ever looked at this site.</p>
]]></content:encoded>
			<wfw:commentRss>http://tnels.com/2009/02/26/new-design-new-attitude/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Safari 3.1 Part 3 &#8211; Why Safari pissed me off</title>
		<link>http://tnels.com/2008/04/05/safari-31-part-3-why-safari-pissed-me-off/</link>
		<comments>http://tnels.com/2008/04/05/safari-31-part-3-why-safari-pissed-me-off/#comments</comments>
		<pubDate>Sat, 05 Apr 2008 14:02:15 +0000</pubDate>
		<dc:creator>t.nels</dc:creator>
				<category><![CDATA[browsers]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[fonts]]></category>
		<category><![CDATA[safari]]></category>

		<guid isPermaLink="false">http://tnels.com/?p=26</guid>
		<description><![CDATA[Okay, so I have finally gotten to this post. I guess I took the whole week off. I gotta be more disciplined. Anyway&#8230; One thing that angered me about Safari 3.1 was its @font-face support. This allows developers to load fonts that may not already be on someone&#8217;s computer and use them anywhere in the [...]]]></description>
			<content:encoded><![CDATA[<p>Okay, so I have finally gotten to this post. I guess I took the whole week off. I gotta be more disciplined. Anyway&#8230;</p>
<p>One thing that angered me about Safari 3.1 was its @font-face support. This allows developers to load fonts that may not already be on someone&#8217;s computer and use them anywhere in the site. This could be a totally awesome tool, however, I thought, &#8220;Why the hell is Safari trying to become IE?&#8221; <span id="more-26"></span></p>
<p>What do I mean by that statement. Well, the reason the IE sucks to develop for is because it is too busy trying to support older websites that don&#8217;t <a title="Explanation of gracefully degrading" href="http://www.umuc.edu/ade/wia/basic.html#Degrade" target="_blank">gracefully degrade</a>. The developers were too busy trying to get the site to work in a patched together browser, so standards weren&#8217;t followed. This comes from the fact that IE attempted to create it own standard (as did Netscape) because they were all attempting to <a title="The Browser Wars" href="http://www.ericsink.com/Browser_Wars.html" target="_blank">monopolize the internet</a>.</p>
<p>Anyway, so we have Safari attempting to, in my view, add its own specification to CSS. Turns out I&#8217;m wrong. The @font-face selector is actually a part of the CSS3 spec. However, CSS3 is not fully &#8220;approved&#8221; even though it is supported. I&#8217;m not really sure how that works, but I&#8217;d really like to see some definite approval before we see support.</p>
<p>So I guess @font-face is all good. Soon we&#8217;ll be seeing websites in font other than Arial, Verdana, Tahoma, Trebuchet MS, Georgia, Times, and fantasy? Almost. Turns out you have to host the font files on your server, in a readable directory, so you can&#8217;t put up commercial fonts because all users will have to do is read your CSS (thanks <a title="Firebug is awesome!" href="http://getfirebug.com" target="_blank">Firebug</a>!) and navigate to the font file and download it. Not good. So we are stuck with Open Type fonts. Which can be good, and are getting better, but they&#8217;re no <a title="Din font" href="http://www.myfonts.com/fonts/fontfont/ff-din/" target="_blank">Din</a>.</p>
<p>But wait there&#8217;s more! You can load other fonts with this handy little tool known as <a title="sFIR font replacement with Flash" href="http://www.mikeindustries.com/blog/sifr/" target="_blank">sFIR</a>. sFIR is awesome because it replaces your headings with Flash files that have the font&#8217;s embedded. It gracefully degrades (if someone doesn&#8217;t have Flash, they get the heading in your default font style). It also has limitations. sFIR is no intended to be used for mainbody text, only small chunks, like headings. And the person needs Flash (who doesn&#8217;t have it now-a-days?).</p>
<p>For more on @font-face and how it works, check out this <a title="Explanation of Safari 3.1 @font-face" href="http://www.broken-links.com/2008/03/18/safari-31-introduces-web-fonts-for-all/" target="_blank">@font-font explanation</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://tnels.com/2008/04/05/safari-31-part-3-why-safari-pissed-me-off/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Battling with IE &#8211; 4 CSS methods</title>
		<link>http://tnels.com/2008/03/27/battling-with-ie-4-css-methods/</link>
		<comments>http://tnels.com/2008/03/27/battling-with-ie-4-css-methods/#comments</comments>
		<pubDate>Thu, 27 Mar 2008 15:27:44 +0000</pubDate>
		<dc:creator>t.nels</dc:creator>
				<category><![CDATA[code]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[browsers]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[IE]]></category>
		<category><![CDATA[internet]]></category>

		<guid isPermaLink="false">http://tnels.com/2008/03/27/battling-with-ie-4-css-methods.html</guid>
		<description><![CDATA[Recently I have come to the realization that I spend so much time in production that I rarely get to search for things that would be useful, big picture resources/learning for future projects. Basically, I&#8217;m bad at keeping up with where CSS and HTML are going. And since I am trying to really push myself [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I have come to the realization that I spend so much time in production that I rarely get to search for things that would be useful, big picture resources/learning for future projects. Basically, I&#8217;m bad at keeping up with where CSS and HTML are going. And since I am trying to really push myself to have better skills to contribute to not just my current position, but the world at large, I have found a bunch of great resources.<span id="more-23"></span></p>
<p>I have to admit that having a blog and wanting to write well researched and thoughtful articles has really contributed to this. I&#8217;m still brewing my last critique of Safari 3.1, and in the process of doing research around this have discovered quite a bit of cool stuff (by the way, my writing still sucks, I use words like stuff too much). So I thought I would list a few way to deal with IE issues.</p>
<ol>
<li>Eric Meyer is the man, and give us this bit of code to break some of the major issues you will run into with IE. You can see them at his <a title="Reset IE 6/7 code" href="http://meyerweb.com/eric/thoughts/2007/05/01/reset-reloaded/" target="_blank">Reset Reloaded</a> article, which I found on this webiste, <a title="Keys to Consistent CSS" href="http://www.w3-edge.com/weblog/keys-to-consistent-css/" target="_blank">Keys to Consistent CSS</a>. Here&#8217;s the code in case you are too lazy:<code><br />
html, body, div, span, applet, object, iframe,<br />
h1, h2, h3, h4, h5, h6, p, blockquote, pre,<br />
a, abbr, acronym, address, big, cite, code,<br />
del, dfn, em, font, img, ins, kbd, q, s, samp,<br />
small, strike, strong, sub, sup, tt, var,<br />
dl, dt, dd, ol, ul, li,<br />
fieldset, form, label, legend,<br />
table, caption, tbody, tfoot, thead, tr, th, td {<br />
margin: 0;<br />
padding: 0;<br />
border: 0;<br />
outline: 0;<br />
font-weight: inherit;<br />
font-style: inherit;<br />
font-size: 100%;<br />
font-family: inherit;<br />
vertical-align: baseline;<br />
}<br />
/* remember to define focus styles! */<br />
:focus {<br />
outline: 0;<br />
}<br />
body {<br />
line-height: 1;<br />
color: black;<br />
background: white;<br />
}<br />
ol, ul {<br />
list-style: none;<br />
}<br />
/* tables still need 'cellspacing="0"' in the markup */<br />
table {<br />
border-collapse: separate;<br />
border-spacing: 0;<br />
}<br />
caption, th, td {<br />
text-align: left;<br />
font-weight: normal;<br />
}<br />
blockquote:before, blockquote:after,<br />
q:before, q:after {<br />
content: "";<br />
}<br />
blockquote, q {<br />
quotes: "" "";<br />
}<br />
</code></p>
<h3>******Update*******</h3>
<p>The above is the old version of the reset. Eric Meyer has a new version of <a href="http://meyerweb.com/eric/thoughts/2008/01/15/resetting-again/">the browser reset</a>, posted Jan &#8217;08.</li>
<li>Another great resource is <a title="Dean Edwards IE7 JavaScript Library" href="http://dean.edwards.name/IE7/" target="_blank">Dean Edwards IE7 JavaScript library</a>, which fools anything less than IE7 into thinking its IE7. Initially I thought this was awesome. Then I realized it made me lazy. Then I thought it was too big. Now I&#8217;m so good, I don&#8217;t need it (which is partially true). Version 2 has gotten much smaller, but is still in Beta.</li>
<li>Hacks. As much as I love them, they create invalid CSS. You can use _ before your propertiess to target IE6, and * before them to target IE7 (which also targets IE6 by the way), or both to create properties that affect both:<br />
<code><br />
/* Target IE 6 and below*/<br />
#maincontent {<br />
width: 400px;<br />
_width: 410px;<br />
}<br />
/* Target IE7 and below */<br />
#maincontent {<br />
width: 400px;<br />
*width: 410px;<br />
}<br />
/* Target IE6 and IE7 separately. ***Make sure to put the IE6 ("_") property second*** */<br />
#maincontent {<br />
width: 400px;<br />
*width: 410px;<br />
_width: 415px;<br />
}<br />
</code><br />
Let me be absolutely clear, I do not endorse hacks, but I have been known to use them in a pinch (a fact that I am not proud of).</li>
<li>And here&#8217;s my preferred method, <a title="HTML Conditional Comments" href="http://www.quirksmode.org/css/condcom.html" target="_blank">Conditional Comments</a>, which you can use to have specific stylesheets for different browsers. Make sure you put these after your global stylesheet(s) so they properly override the styles.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://tnels.com/2008/03/27/battling-with-ie-4-css-methods/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Holy crap its spring!</title>
		<link>http://tnels.com/2008/03/26/holy-crap-its-spring/</link>
		<comments>http://tnels.com/2008/03/26/holy-crap-its-spring/#comments</comments>
		<pubDate>Wed, 26 Mar 2008 22:48:38 +0000</pubDate>
		<dc:creator>t.nels</dc:creator>
				<category><![CDATA[brain farts]]></category>
		<category><![CDATA[Boston]]></category>
		<category><![CDATA[weather]]></category>

		<guid isPermaLink="false">http://tnels.com/2008/03/26/holy-crap-its-spring.html</guid>
		<description><![CDATA[Okay, so not much of a big deal for those of you who are actually reading this (which means no one besides myself), but it cracked 57 here in Boston today. I could get used to this. Only a couple months until it gets brutally hot, so I might as well enjoy it.]]></description>
			<content:encoded><![CDATA[<p>Okay, so not much of a big deal for those of you who are actually reading this (which means no one besides myself), but it cracked 57 here in Boston today. I could get used to this. Only a couple months until it gets brutally hot, so I might as well enjoy it.</p>
]]></content:encoded>
			<wfw:commentRss>http://tnels.com/2008/03/26/holy-crap-its-spring/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Safari 3.1 Part 2 &#8211; The Develop Menu/Web Inspector</title>
		<link>http://tnels.com/2008/03/25/safari-31-part-2-the-develop-menuweb-inspector/</link>
		<comments>http://tnels.com/2008/03/25/safari-31-part-2-the-develop-menuweb-inspector/#comments</comments>
		<pubDate>Tue, 25 Mar 2008 18:27:47 +0000</pubDate>
		<dc:creator>t.nels</dc:creator>
				<category><![CDATA[browsers]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[development tools]]></category>
		<category><![CDATA[firebug]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[safari]]></category>
		<category><![CDATA[web inspector]]></category>

		<guid isPermaLink="false">http://tnels.com/2008/03/25/safari-31-part-2-the-develop-menuweb-inspector.html</guid>
		<description><![CDATA[This is hands down the issue that will covert me to using Safari. I live and die by Firebug at work. It has so many applications, the most amazing of which is the ability to edit styles and see live updates without switching between programs. Plus you get to see all your CSS properties right [...]]]></description>
			<content:encoded><![CDATA[<p>This is hands down the issue that will covert me to using Safari. I live and die by Firebug at work. It has so many applications, the most amazing of which is the ability to edit styles and see live updates without switching between programs. Plus you get to see all your CSS properties right next to each other, so if you over somehow over-ruling a style you can see how best to go about fixing your problem. Plus you got the DOM right there to help your JavaScript.<span id="more-8"></span></p>
<p>So now this feature comes built in. Here&#8217;s how to enable the <a title="Safari develop menu enabling instructions" href="http://www.macobserver.com/tip/2008/03/24.1.shtml" target="_blank">Safari develop menu.</a></p>
<p>It works pretty similar to how Firebug does, however, there is some additional coolness/drawbacks.</p>
<h2>What&#8217;s the same</h2>
<p>It starts as a menu item, but of you hit option + command + i, you get a pop-up version of the Web Inspector (of you can go to the Develop menu and select Show Web Inspector). Firebug begins in the same window as the page you are, but you can open it in a separate window after that. Starting in a separate window is nice because you can see the whole page without any obstruction, but you can always click the bottom right hand corner to open the Inspector in the same window. I should point out that there is no button to close the Inspector once it is in the same window was the page, which totally blows (and even the option + command + i shortcut doesn&#8217;t close it).</p>
<p class="image-example"><a title="The Develop Menu for Safari 3.1" rel="lightbox" href="http://tnels.com/wp-content/uploads/2008/03/develop-menu.png"><img src="http://tnels.com/wp-content/uploads/2008/03/develop-menu-150x150.png" alt="The Develop Menu for Safari 3.1" width="150" height="150" /></a> <a title="Web Inspector Safari 3.1" rel="lightbox" href="http://tnels.com/wp-content/uploads/2008/03/inspect-window.png"><img src="http://tnels.com/wp-content/uploads/2008/03/inspect-window-150x150.png" alt="Web Inspector Safari 3.1" width="150" height="150" /></a></p>
<p>Another great feature is the &#8220;Inspect Element&#8221; option. If you right click on element, you will see it at the bottom of the option menu. This is another feature borrowed from Firebug.</p>
<p class="image-example"><a title="Inspect Element Safari 3.1" rel="lightbox" href="http://tnels.com/wp-content/uploads/2008/03/option-menu.png"><img src="http://tnels.com/wp-content/uploads/2008/03/option-menu-150x150.png" alt="Inspect Element Safari 3.1" width="150" height="150" /></a></p>
<p>They both have features that let you get into the DOM, they just have different titles. In Firebug, its called &#8220;DOM&#8221;. In Web Inspector, DOM properties are found under &#8220;Properties&#8221;. I think this is Apple&#8217;s subtle way of merging the way people thing about HTML and JavaScript (as two separate languages) into one unified structure. While they both do separate things and operate as separate languages, there really isn&#8217;t much difference when it comes to the end user. Plus one (JavaScript) is generally useless with out the other (HTML).</p>
<h2>What&#8217;s Different</h2>
<p>When it comes to styles, you get sort of the same treatment, you can see all the styles for a given element, as they broken down by CSS properties. Web Inspector gives you a nice feature by listing all the applied styles first, regardless of where the property is coming from, and then it lists them by selector. However, you cannot edit this &#8220;Computed Style&#8221;; you have to scroll down some more and find the real style.</p>
<p class="image-example"><a title="Computed Style Safari 3.1" rel="lightbox" href="http://tnels.com/wp-content/uploads/2008/03/computed-style.png"><img src="http://tnels.com/wp-content/uploads/2008/03/computed-style-150x150.png" alt="Computed Style Safari 3.1" width="150" height="150" /></a></p>
<p>Another main difference between Firebug and the Web Inspector is when an element is highlighted (or inspected). Firebug has a color coded system, so you can see the element size (in blue), the padding (in purple), the border (in grey), and the margin (in yellow).</p>
<p class="image-example"><a title="Margin/Border Firebug" rel="lightbox" href="http://tnels.com/wp-content/uploads/2008/03/firebug-bordermargin.png"><img src="http://tnels.com/wp-content/uploads/2008/03/firebug-bordermargin-150x150.png" alt="Margin/Border Firebug" width="150" height="150" /></a><a title="Padding Firebug" rel="lightbox" href="http://tnels.com/wp-content/uploads/2008/03/firebug-padding.png"><img src="http://tnels.com/wp-content/uploads/2008/03/firebug-padding-150x46.png" alt="Padding Firebug" width="150" height="46" /></a></p>
<p>Web Inspector grays out the screen, except for the element, so you can really focus in on it. But you are missing the box model elements, which can come in handy.</p>
<p class="image-example"><a title="Inspect Element Overlay Safari 3.1" rel="lightbox" href="http://tnels.com/wp-content/uploads/2008/03/inspector-inspect.png"><img src="http://tnels.com/wp-content/uploads/2008/03/inspector-inspect-150x147.png" alt="Inspect Element Overlay Safari 3.1" width="150" height="147" /></a></p>
<h2>Layout vs. Metrics</h2>
<p>They both a way of breaking down the box model in useful terms, but I still like the Firebug implementation. Firebug has what it calls &#8220;Layout&#8221; which shows all the measurement applied by the box model (including offset), and when you mouse over one of them, overlays a ruler for the X and Y on your site and shows you where your boundaries lie within that. This can be great for aligning elements, and helping improve typography.</p>
<p class="image-example"><a title="Layout Firebug" rel="lightbox" href="http://tnels.com/wp-content/uploads/2008/03/firebug-layout.png"><img src="http://tnels.com/wp-content/uploads/2008/03/firebug-layout-150x150.png" alt="Layout Firebug" width="150" height="150" /></a><a title="Layout in browser Firebug" rel="lightbox" href="http://tnels.com/wp-content/uploads/2008/03/firebug-layout2.png"><img src="http://tnels.com/wp-content/uploads/2008/03/firebug-layout2-150x150.png" alt="Layout in browser Firebug" width="150" height="150" /></a></p>
<p>Web Inspector has what it calls &#8220;Metrics&#8221;, but it stops there. It does show you all the measurements of the block but it lacks to in browser display you get with Firebug.</p>
<p class="image-example"><a title="Inspector Metrics" rel="lightbox" href="http://tnels.com/wp-content/uploads/2008/03/inspector-metrics.png"><img src="http://tnels.com/wp-content/uploads/2008/03/inspector-metrics-150x150.png" alt="Inspector Metrics" width="150" height="150" /></a></p>
<h2>General look and feel</h2>
<p>Firebug goes for a tabbed layout, so everything works similar to how your browse. Web Inspector goes in a different direction and breaks each file down by type, and allows you to access them in this way.</p>
<p>It basically reinforces the Aqua branding of Safari and borrows lots of its style from other Aqua interfaces. I kinda like this because Apple has a great approach to Usability. It does reinforce to the user that all of these styles come from different files, but in the end get put together by the browser. Firebug breaks everything down by type, but doesn&#8217;t necessarily draw the distinction (at least not directly) of where all this info is coming from.</p>
<h2>Browser Defaults</h2>
<p>This is a key component, especially for people who are learning, and it is found only in Web Inspector, and that is browser defaults. Web Inspector gives the user the ability to enable &#8220;Show Inherited Properties&#8221; which shows the user the browser defaults for each element. For a web developer this is crucial. I think the IE7 developer tools attempts this, but still doesn&#8217;t let you know about the 2 pixels of hidden border (I highly recommend &#8220;border-collapse:collapse;&#8221; make it into every stylesheet you create).</p>
<p>This does let you know about how Safari interprets everything, which I like because there are a few things that Safari interprets a little differently than I am used to. Standards compliance is a scary thing. Because it means you will actually get what you want.</p>
<h2>Conclusion</h2>
<p>Overall, I haven&#8217;t had a ton of experience with the Web Inspector yet, but I do like where it is going. Soon it will be on par with Firebug, and maybe surpass it. But until then Firebug is awesome, and I&#8217;m loving that browsers are adding built-in development tools, for lazy developer trolls like myself.</p>
<p>Next up, Part 3, Why Apple pissed me off with 3.1&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://tnels.com/2008/03/25/safari-31-part-2-the-develop-menuweb-inspector/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Safari 3.1 Part 1 &#8211; It&#039;s growing on me</title>
		<link>http://tnels.com/2008/03/25/safari-31-part-1/</link>
		<comments>http://tnels.com/2008/03/25/safari-31-part-1/#comments</comments>
		<pubDate>Tue, 25 Mar 2008 13:52:04 +0000</pubDate>
		<dc:creator>t.nels</dc:creator>
				<category><![CDATA[browsers]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[camino]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[safari]]></category>

		<guid isPermaLink="false">http://tnels.com/2008/03/25/safari-31-part-1.html</guid>
		<description><![CDATA[Lately, I am becoming more and more a fan of Safari. The Past One of the reasons I never really used it in the past was because it was just a browser, and, as a developer, while testing in it was necessary, I would never actually use it while I was setting things up. Here [...]]]></description>
			<content:encoded><![CDATA[<p>Lately, I am becoming more and more a fan of Safari.</p>
<h2>The Past</h2>
<p>One of the reasons I never really used it in the past was because it was just a browser, and, as a developer, while testing in it was necessary, I would never actually use it while I was setting things up. Here are some more reasons I never used it:</p>
<ul>
<li>I support Firefox for everything they have done to kill IE</li>
<li><a href="http://caminobrowser.org/" title="Camino Open Source Mac Browser" target="_blank">Camino</a> does the same stuff (and is getting better at it all the time)</li>
<li>Only one theme/skin</li>
<li>I really enjoy live bookmarks instead of RSS aggregators</li>
<li>Sometimes Javascript can be a pain (ever use tinyMCE?)</li>
<li>Web Developer toolbar</li>
<li><a href="http://getfirebug.com/" title="You must get Firebug!" target="_blank">Firebug</a></li>
</ul>
<h2>The Present</h2>
<p>But now that is changing.</p>
<ul>
<li>Its <em>fast</em></li>
<li>Safari now supports RSS feeds in the browser, still no live bookmarks, but its a start.</li>
<li>I&#8217;ve fallen in love with Aqua, and I don&#8217;t mind the look of Safari in Leopard (but I think some of the buttons are a little large and awkward).</li>
<li>Firefox is becoming a slow beast that is killing my browsing experience, but I&#8217;m really excited about 3.0. I have a whole other post brewing about what went wrong with Firefox.</li>
<li>Camino is still there, but for some reason, it just not exciting anymore.</li>
<li>Last but certainly not least&#8230; Safari has a Develop Menu in the Toolbar!!!!! Its not as advanced as Firebug (yet) but it gives an amazing amount of depth into how Safari renders everything, which is useful (and awesome!)</li>
</ul>
<p>Stay tuned for more on the Develop Menu in Part 2&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://tnels.com/2008/03/25/safari-31-part-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
