<?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>Glenn's Second Brain</title>
	<atom:link href="http://www.glennmarcus.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.glennmarcus.com/blog</link>
	<description>For the spillover</description>
	<lastBuildDate>Thu, 15 Apr 2010 23:28:56 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>The World Would Be Better If Everyone Watched This Video [Space]</title>
		<link>http://www.glennmarcus.com/blog/2010/04/12/the-world-would-be-better-if-everyone-watched-this-video-space/</link>
		<comments>http://www.glennmarcus.com/blog/2010/04/12/the-world-would-be-better-if-everyone-watched-this-video-space/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 13:00:59 +0000</pubDate>
		<dc:creator>Carl Sagan</dc:creator>
				<category><![CDATA[amazing]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[Clips]]></category>
		<category><![CDATA[Fb]]></category>
		<category><![CDATA[Imagecache]]></category>
		<category><![CDATA[Pale blue dot]]></category>
		<category><![CDATA[Republished]]></category>
		<category><![CDATA[Space]]></category>
		<category><![CDATA[tweet]]></category>
		<category><![CDATA[user/12651333281871808648/label/amazing]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/fresh]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/read]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/tracking-item-link-used]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/eea998ebd402778e</guid>
		<description><![CDATA[<div style="float:left;padding-right:10px">
<div><a title="Click here to read The World Would Be Better If Everyone Watched This Video" href="http://gizmodo.com/5513783/the-world-would-be-better-if-everyone-watched-this-video"><br />
						<img style="border-color:#B3B3B3;border-width:0 1px 1px;border-style:none solid solid" height="120" width="160" title="Click here to read The World Would Be Better If Everyone Watched This Video" alt="Click here to read The World Would Be Better If Everyone Watched This Video" src="http://cache-07.gawkerassets.com/assets/images/4/2010/04/160x120_screen_shot_2010-04-12_at_8.57.58_pm.jpg"/><br />
						<span></span>					</a></div>
</p></div>
<p>				 <i>If every person on our <a href="http://gizmodo.com/5478787/the-most-accurate-highest-resolution-earth-view-to-date">blue Earth</a> watched this video, the world would be a much better place. At least for a few minutes. Listen closely to Carl Sagan&#8217;s words till the end. It won&#8217;t fail to get you teary.-JD</i>				<a href="http://gizmodo.com/5513783/the-world-would-be-better-if-everyone-watched-this-video" title="Click here to read more about The World Would Be Better If Everyone Watched This Video [Space]">MoreÂ Â»</a><br />
				<br style="clear:both"/><br />
			<br style="clear:both"/><br />
<br style="clear:both"/><br />
<a href="http://ads.pheedo.com/click.phdo?s=2d8ae2dfda6f723ed9cc744d09a6eee7&#38;p=1"><img alt="" style="border:0" border="0" src="http://ads.pheedo.com/img.phdo?s=2d8ae2dfda6f723ed9cc744d09a6eee7&#38;p=1"/></a><br />
<img alt="" height="0" width="0" border="0" src="http://ib.adnxs.com/seg?add=24595&#38;t=2"/>
<div>
<a href="http://feeds.gawker.com/~ff/gizmodo/full?a=pXJLdilNClc:2MeE4k3NA70:H0mrP-F8Qgo"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=H0mrP-F8Qgo" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=pXJLdilNClc:2MeE4k3NA70:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=pXJLdilNClc:2MeE4k3NA70:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=pXJLdilNClc:2MeE4k3NA70:D7DqB2pKExk" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=pXJLdilNClc:2MeE4k3NA70:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=pXJLdilNClc:2MeE4k3NA70:V_sGLiPBpWU" border="0"/></a>
</div>
<p><img src="http://feeds.feedburner.com/~r/gizmodo/full/~4/pXJLdilNClc" height="1" width="1"/></p>
]]></description>
			<content:encoded><![CDATA[<div style="float:left;padding-right:10px">
<div><a title="Click here to read The World Would Be Better If Everyone Watched This Video" href="http://gizmodo.com/5513783/the-world-would-be-better-if-everyone-watched-this-video"><br />
						<img style="border-color:#B3B3B3;border-width:0 1px 1px;border-style:none solid solid" height="120" width="160" title="Click here to read The World Would Be Better If Everyone Watched This Video" alt="Click here to read The World Would Be Better If Everyone Watched This Video" src="http://cache-07.gawkerassets.com/assets/images/4/2010/04/160x120_screen_shot_2010-04-12_at_8.57.58_pm.jpg"/><br />
						<span></span>					</a></div>
</p></div>
<p>				 <i>If every person on our <a href="http://gizmodo.com/5478787/the-most-accurate-highest-resolution-earth-view-to-date">blue Earth</a> watched this video, the world would be a much better place. At least for a few minutes. Listen closely to Carl Sagan&#8217;s words till the end. It won&#8217;t fail to get you teary.-JD</i>				<a href="http://gizmodo.com/5513783/the-world-would-be-better-if-everyone-watched-this-video" title="Click here to read more about The World Would Be Better If Everyone Watched This Video [Space]">MoreÂ Â»</a><br />
				<br style="clear:both"/><br />
			<br style="clear:both"/><br />
<br style="clear:both"/><br />
<a href="http://ads.pheedo.com/click.phdo?s=2d8ae2dfda6f723ed9cc744d09a6eee7&amp;p=1"><img alt="" style="border:0" border="0" src="http://ads.pheedo.com/img.phdo?s=2d8ae2dfda6f723ed9cc744d09a6eee7&amp;p=1"/></a><br />
<img alt="" height="0" width="0" border="0" src="http://ib.adnxs.com/seg?add=24595&amp;t=2"/>
<div>
<a href="http://feeds.gawker.com/~ff/gizmodo/full?a=pXJLdilNClc:2MeE4k3NA70:H0mrP-F8Qgo"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=H0mrP-F8Qgo" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=pXJLdilNClc:2MeE4k3NA70:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=pXJLdilNClc:2MeE4k3NA70:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=pXJLdilNClc:2MeE4k3NA70:D7DqB2pKExk" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=pXJLdilNClc:2MeE4k3NA70:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=pXJLdilNClc:2MeE4k3NA70:V_sGLiPBpWU" border="0"/></a>
</div>
<p><img src="http://feeds.feedburner.com/~r/gizmodo/full/~4/pXJLdilNClc" height="1" width="1"/></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2010/04/12/the-world-would-be-better-if-everyone-watched-this-video-space/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS Specificity And Inheritance</title>
		<link>http://www.glennmarcus.com/blog/2010/04/07/css-specificity-and-inheritance/</link>
		<comments>http://www.glennmarcus.com/blog/2010/04/07/css-specificity-and-inheritance/#comments</comments>
		<pubDate>Wed, 07 Apr 2010 14:34:54 +0000</pubDate>
		<dc:creator>Inayaili de Leon</dc:creator>
				<category><![CDATA[web20]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[user/12651333281871808648/label/web20]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/fresh]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/read]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/da46796c715e6076</guid>
		<description><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"> <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in CSS Specificity And Inheritance" border="0"/><br /> <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in CSS Specificity And Inheritance"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in CSS Specificity And Inheritance"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in CSS Specificity And Inheritance"/></a></div>
</td>
</tr>
</table>
<p>CSSâ€™ barrier to entry is extremely low, mainly due to the nature of its syntax. Being clear and easy to understand, the syntax makes sense even to the inexperienced Web designer. Itâ€™s so simple, in fact, that you could style a simple CSS-based website within a few hours of learning it.</p>
<p>But <strong>this apparent simplicity is deceitful</strong>. If after a few hours of work, your perfectly crafted website looks great in Safari, all hell might break loose if you havenâ€™t taken the necessary measures to make it work in Internet Explorer. In a panic, you add hacks and filters where only a few tweaks or a different approach might do. Knowing how to deal with these issues comes with experience, with trial and error and with failing massively and then learning the correct way.</p>
<p>Understanding a few often overlooked concepts is also important. The concepts may be hard to grasp and look boring at first, but understanding them and knowing how to take advantage of them is important.</p>
<p>Two of these concepts are <strong>specificity</strong> and <strong>inheritance</strong>. Not very common words among Web designers, are they? Talking about <code>border-radius</code> and <code>text-shadow</code> is a lot more fun; but specificity and inheritance are fundamental concepts that any person who wants to be good at CSS should understand. They will help you create clean, maintainable and flexible style sheets. Letâ€™s look at what they mean and how they work.</p>
<p>The notion of a â€œ<strong>cascade</strong>â€ is at the heart of CSS (just look at its name). It ultimately determines which properties will&#8230;</p>]]></description>
			<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"> <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in CSS Specificity And Inheritance" border="0"/><br /> <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in CSS Specificity And Inheritance"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in CSS Specificity And Inheritance"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in CSS Specificity And Inheritance"/></a></div>
</td>
</tr>
</table>
<p>CSSâ€™ barrier to entry is extremely low, mainly due to the nature of its syntax. Being clear and easy to understand, the syntax makes sense even to the inexperienced Web designer. Itâ€™s so simple, in fact, that you could style a simple CSS-based website within a few hours of learning it.</p>
<p>But <strong>this apparent simplicity is deceitful</strong>. If after a few hours of work, your perfectly crafted website looks great in Safari, all hell might break loose if you havenâ€™t taken the necessary measures to make it work in Internet Explorer. In a panic, you add hacks and filters where only a few tweaks or a different approach might do. Knowing how to deal with these issues comes with experience, with trial and error and with failing massively and then learning the correct way.</p>
<p>Understanding a few often overlooked concepts is also important. The concepts may be hard to grasp and look boring at first, but understanding them and knowing how to take advantage of them is important.</p>
<p>Two of these concepts are <strong>specificity</strong> and <strong>inheritance</strong>. Not very common words among Web designers, are they? Talking about <code>border-radius</code> and <code>text-shadow</code> is a lot more fun; but specificity and inheritance are fundamental concepts that any person who wants to be good at CSS should understand. They will help you create clean, maintainable and flexible style sheets. Letâ€™s look at what they mean and how they work.</p>
<p>The notion of a â€œ<strong>cascade</strong>â€ is at the heart of CSS (just look at its name). It ultimately determines which properties will modify a given element. The cascade is tied to three main concepts: importance, specificity and source order. The cascade follows these three steps to determine which properties to assign to an element. By the end of this process, the cascade has assigned a <strong>weight</strong> to each rule, and this weight determines which rule takes precedence, when more than one applies.</p>
<p>Please consider reading our previous related article:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2007/07/27/css-specificity-things-you-should-know/">CSS Specificity: Things You Should Know</a></li>
</ul>
<p>[Offtopic: by the way, did you know that there is a Smashing eBook Series? Book #1 is <a href="http://shop.smashingmagazine.com/smashing-ebook-series-1-professional-web-design-intl.html">Professional Web Design</a>, 242 pages for just $9,90.]</p>
<h3>1. Importance</h3>
<p>Style sheets can have a few different sources:</p>
<ol>
<li><strong>User agent</strong><br /> For example, the browserâ€™s default style sheet.</li>
<li><strong>User</strong><br /> Such as the userâ€™s browser options.</li>
<li><strong>Author</strong><br /> This is the CSS provided by the page (whether inline, embedded or external)</li>
</ol>
<p>By default, this is the order in which the different sources are processed, so the authorâ€™s rules will override those of the user and user agent, and so on.</p>
<p>There is also the <code>!important</code> declaration to consider in the cascade. This declaration is used to balance the relative priority of user and author style sheets. While author style sheets take precedence over user ones, if a user rule has <code>!important</code> applied to it, it will override even an author rule that also has <code>!important</code> applied to it.</p>
<p>Knowing this, letâ€™s look at the final order, in <strong>ascending order of importance</strong>:</p>
<ol>
<li>User agent declarations,</li>
<li>User declarations,</li>
<li>Author declarations,</li>
<li>Author <code>!important</code> declarations,</li>
<li>User <code>!important</code> declarations.</li>
</ol>
<p>This flexibility in priority is key because it allows users to override styles that could hamper the accessibility of a website. (A user might want a larger font or a different color, for example.)</p>
<h3>2. Specificity</h3>
<p>Every CSS rule has a <strong>particular weight</strong> (as mentioned in the introduction), meaning it could be more or less important than the others or equally important. This weight defines which properties will be applied to an element when there are conflicting rules.</p>
<p>Upon assessing a ruleâ€™s importance, the cascade attributes a specificity to it; if one rule is more specific than another, it overrides it.</p>
<p>If two rules share the same weight, source and specificity, <strong>the later one is applied</strong>.</p>
<h4>2.1 How to Calculate Specificity?</h4>
<p>There are <strong>several ways to calculate</strong> a selectorâ€™s specificity.</p>
<p>The quickest way is to do the following. Add 1 for each element and pseudo-element (for example, <code>:before</code> and <code>:after</code>); add 10 for each attribute (for example, <code>[type=â€textâ€]</code>), class and pseudo-class (for example, <code>:link</code> or <code>:hover</code>); add 100 for each ID; and add 1000 for an inline style.</p>
<p>Letâ€™s calculate the specificity of the following selectors using this method:</p>
<ul>
<li><code><strong>p.note</strong></code><br /> 1 class + 1 element = 11</li>
<li><code><strong>#sidebar p[lang="en"]</strong></code><br /> 1 ID + 1 attribute + 1 element = 111</li>
<li><code><strong>body #main .post ul li:last-child</strong></code><br /> 1 ID + 1 class + 1 pseudo-class + 3 elements = 123</li>
</ul>
<p>A similar method, described in the W3Câ€™s specifications, is to start with a=0, b=0, c=0 and d=0 and replace the numbers accordingly:</p>
<ul>
<li>a = 1 if the style is inline,</li>
<li>b = the number of IDs,</li>
<li>c = the number of attribute selectors, classes and pseudo-classes,</li>
<li>d = the number of element names and pseudo-elements.</li>
</ul>
<p>Letâ€™s calculate the specificity of another set of selectors:</p>
<ul>
<li><code><strong>&lt;p style=&quot;color:#000000;&quot;&gt;</strong></code><br /> a=1, b=0, c=0, d=0 â†’ 1000</li>
<li><code><strong>footer nav li:last-child</strong></code><br /> a=0, b=0, c=1, d=3 â†’ 0013</li>
<li><code><strong>#sidebar input:not([type="submit"])</strong></code><br /> a=0, b=1, c=1, d=1 â†’ 0111<br /> <em>(Note that the negation pseudo-class doesnâ€™t count, but the selector inside it does.)</em></li>
</ul>
<p>If youâ€™d rather learn this in a <strong>more fun way</strong>, Andy Clarke drew a clever <a href="http://www.stuffandnonsense.co.uk/archives/css_specificity_wars.html">analogy between specificity and Star Wars</a> back in 2005, which certainly made it easier for Star Wars fans to understand specificity. Another good explanation is â€œ<a href="http://iamacamera.org/default.aspx?id=95">CSS Specificity for Poker Players</a>,â€ though slightly more complicated.</p>
<p><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/03/starwars.jpg" alt="Starwars in CSS Specificity And Inheritance" width="500" height="300"/><br /> <em>Andy Clarkeâ€™s CSS Specificity Wars chart.</em></p>
<p>Remember that non-CSS presentational markup is attributed with a specificity of 0, which would apply, for example, to the <code>font</code> tag.</p>
<p>Getting back to the <code>!important</code> declaration, keep in mind that using it on a shorthand property is the same as declaring all of its sub-properties as <code>!important</code> (even if that would revert them to the default values).</p>
<p>If you are using imported style sheets (<code>@import</code>) in your CSS, you have to declare them before all other rules. Thus, they would be considered as coming before all the other rules in the CSS file.</p>
<p>Finally, if two selectors turn out to have the same specificity, <strong>the last one will override</strong> the previous one(s).</p>
<h4>2.2 Making Specificity Work For You</h4>
<p>If not carefully considered, specificity can come back to haunt you and lead you to unwittingly transform your style sheets into a complex hierarchy of unnecessarily complicated rules.</p>
<p>You can follow a few <strong>guidelines</strong> to avoid major issues:</p>
<ul>
<li>When starting work on the CSS, use generic selectors, and add specificity as you go along;</li>
<li>Using advanced selectors doesnâ€™t mean using unnecessarily complicated ones;</li>
<li>Rely more on specificity than on the order of selectors, so that your style sheets are easier to edit and maintain (especially by others).</li>
</ul>
<p>A good rule of thumb can be found in Jim Jeffersâ€™ article, â€œ<a href="http://donttrustthisguy.com/2010/03/07/the-art-and-zen-of-writing-css/">The Art and Zen of Writing CSS</a>â€:</p>
<blockquote><p>Refactoring CSS selectors to be less specific is exponentially more difficult than simply adding specific rules as situations arise.</p>
</blockquote>
<h3>3. Inheritance</h3>
<p>A succinct and clear explanation of inheritance is in the <a href="http://www.w3.org/TR/css3-cascade/">CSS3 Cascading and Inheritance module</a> specifications (still in â€œWorking draftâ€ mode):</p>
<blockquote><p>Inheritance is a way of propagating property values from parent elements to their children.</p>
</blockquote>
<p>Some CSS properties are inherited by the children of elements by default. For example, if you set the <code>body</code> tag of a page to a specific font, that font will be inherited by other elements, such as headings and paragraphs, without you having to specifically write as much. This is the magic of inheritance at work.</p>
<p>The CSS specification determines whether each property is inherited by default or not. <strong>Not all properties are inherited</strong>, but you can force ones to be by using the <code>inherit</code> value.</p>
<h4>3.1 Object-Oriented Programming Inheritance</h4>
<p>Though beyond the scope of this article, CSS inheritance shouldnâ€™t be confused with object-oriented programming (OOP) inheritance. Here is the definition of <a href="http://en.wikipedia.org/wiki/Inheritance_(computer_science)">OOP inheritance from Wikipedia</a>, and it makes clear that we are <em>not</em> talking about the same thing:</p>
<blockquote><p>In object-oriented programming (OOP), inheritance is a way to form new classes [â€¦] using classes that have already been defined. Inheritance is employed to help reuse existing code with little or no modification. The new classes [â€¦] inherit attributes and behavior of the pre-existing classes. â€¦</p>
</blockquote>
<h4>3.2 How Inheritance Works</h4>
<p>When an element inherits a value from its parent, it is inheriting its computed value. What does this mean? Every CSS property goes through a four-step process when its value is being determined. Hereâ€™s an excerpt from the <a href="http://www.w3.org/TR/CSS2/cascade.html#value-stages">W3C specification</a>:</p>
<blockquote><p>The final value of a property is the result of a four-step calculation: the value is determined through specification (the â€œspecified valueâ€), then resolved into a value that is used for inheritance (the â€œcomputed valueâ€), then converted into an absolute value if necessary (the â€œused valueâ€), and finally transformed according to the limitations of the local environment (the â€œactual valueâ€).</p>
</blockquote>
<p>In other words:</p>
<ol>
<li><strong>Specified value</strong><br /> The user agent determines whether the value of the property comes from a style sheet, is inherited or should take its initial value.</li>
<li><strong>Computed value</strong><br /> The specified value is resolved to a computed value and exists even when a property doesnâ€™t apply. The document doesnâ€™t have to be laid out for the computed value to be determined.</li>
<li><strong>Used value</strong><br /> The used value takes the computed value and resolves any dependencies that can only be calculated after the document has been laid out (like percentages).</li>
<li><strong>Actual value</strong><br /> This is the value used for the final rendering, after any approximations have been applied (for example, converting a decimal to an integer).</li>
</ol>
<p>If you look at any CSS <strong>propertyâ€™s specification</strong>, you will see that it defines its initial (or default) value, the elements it applies to, its inheritance status and its computed value (among others). For example, the <code>background-color</code> specification states the following:</p>
<blockquote><p>Name: background-color<br /> Value: &lt;color&gt;<br /> Initial: transparent<br /> Applies to: all elements<br /> Inherited: no<br /> Percentages: N/A<br /> Media: visual<br /> Computed value: the computed color(s)</p>
</blockquote>
<p>Confusing? It can be. So, what do we need to understand from all this? And why is it relevant to inheritance?</p>
<p>Letâ€™s go back to the first sentence of this section, which should make more sense now. <em>When an element inherits a value from its parent, it inherits its computed value</em>. Because the computed value exists even if it isnâ€™t specified in the style sheet, a property can be inherited even then: the initial value will be used. So, you can make use of inheritance even if the parent doesnâ€™t have a specified property.</p>
<h4>3.3 Using Inheritance</h4>
<p>The most important thing to know about inheritance is that itâ€™s there and how it works. If you ignore the jargon, inheritance is actually very straightforward.</p>
<p>Imagine you had to specify the <code>font-size</code> or <code>font-family</code> of every element, instead of simply adding it to the <code>body</code> element? That would cumbersome, which is why inheritance is so helpful.</p>
<p>Donâ€™t break it by <strong>using the universal selector</strong> (<code>*</code>) with properties that inherit by default. Bobby Jack wrote <a href="http://www.fiveminuteargument.com/blog/stop-breaking-inheritance">an interesting post about this</a> on his Five-Minute Argument blog. You donâ€™t have to remember all of the properties that inherit, but you will in time.</p>
<p>Rarely does a CSS-related article not bring some kind of bad news about Internet Explorer. This article is no exception. IE supports the <code>inherit</code> value only from version 8, except for the <code>direction</code> and <code>visibility</code> properties. Great.</p>
<h3>4. Using Your Tools</h3>
<p>If you use tools like Firebug or Safariâ€™s Web Inspector, you can see how a given cascade works, which selectors have higher specificity and how inheritance is working on a particular element.</p>
<p>For example, here below is <strong>Firebug</strong> in action, inspecting an element on the page. You can see that some properties are overridden (i.e. crossed out) by other more specific rules:</p>
<p><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/03/firebug.png" alt="Firebug in CSS Specificity And Inheritance" width="399" height="329"/><br /> <em>Firebug in action, informing you how specificity is working.</em></p>
<p>In the next shot, <strong>Safariâ€™s Web Inspector</strong> shows the computed values of an element. This way, you can see the values even though they havenâ€™t been explicitly added to the style sheet:</p>
<p><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/03/safari.png" alt="Safari in CSS Specificity And Inheritance" width="474" height="278"/><br /> <em>With Safariâ€™s Web Inspector (and Firebug), you can view the computed values of a particular element.</em></p>
<h3>5. Conclusion</h3>
<p>Hopefully this article has opened your eyes to (or has refreshed your knowledge of) CSS inheritance and specificity. We encourage you to read the articles cited below, as well as <a href="http://www.smashingmagazine.com/2007/07/27/css-specificity-things-you-should-know/">Smashing Magazineâ€™s previous article on the topic</a>.</p>
<p>Even if you donâ€™t think about them, these issues are present in your daily work as a CSS author. Especially in the case of specificity, itâ€™s important to know how they affect your style sheets and how to plan for them so that they cause only minimal (or no) problems.</p>
<h3>Resources And Further Reading</h3>
<ul>
<li><a href="http://www.w3.org/TR/CSS2/cascade.html">Assigning Property Values, Cascading, and Inheritance</a>, W3C</li>
<li><a href="http://www.w3.org/TR/css3-cascade/">CSS3: Cascading and Inheritance</a>, W3C</li>
<li><a href="http://www.w3.org/TR/css3-selectors/#specificity">Selectors Level 3: Calculating a Selectorâ€™s Specificity</a>, W3C</li>
<li><a href="http://reference.sitepoint.com/css/cascade">The Cascade</a>, SitePoint</li>
<li><a href="http://dev.opera.com/articles/view/28-inheritance-and-cascade/">Inheritance and Cascade</a>, Dev.Opera</li>
<li><a href="http://dorward.me.uk/www/css/inheritance/">CSS Inheritance</a>, Dorward Online</li>
<li><a href="http://monc.se/kitchen/38/cascading-order-and-inheritance-in-css">Cascading Order and Inheritance in CSS</a>, Davidâ€™s Kitchen</li>
<li><a href="http://www.vanseodesign.com/css/css-specificity-inheritance-cascaade/">Understanding Style Precedence in CSS: Specificity, Inheritance, and the Cascade</a>, Van SEO Design</li>
<li><a href="http://css-tricks.com/specifics-on-css-specificity/">Specifics on CSS Specificity</a>, CSS-Tricks</li>
<li><a href="http://meyerweb.com/eric/css/link-specificity.html">Link Specificity</a>, meyerweb.com</li>
<li><a href="http://www.mezzoblue.com/archives/2005/01/20/redundancy_v/">Redundancy vs. Dependency</a>, mezzoblue</li>
</ul>
<p><em>(al)</em></p>
<hr />
<p><small>Â© Inayaili de Leon for <a href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2010. | <a href="http://www.smashingmagazine.com/2010/04/07/css-specificity-and-inheritance/">Permalink</a> | <a href="http://www.smashingmagazine.com/2010/04/07/css-specificity-and-inheritance/#comments">40 comments</a> | <a title="Bookmark in del.icio.us" href="http://del.icio.us/post?url=http://www.smashingmagazine.com/2010/04/07/css-specificity-and-inheritance/&amp;title=CSS%20Specificity%20And%20Inheritance">Add to del.icio.us</a> | <a title="Bookmark in Digg" href="http://digg.com/submit?phase=2&amp;url=http://www.smashingmagazine.com/2010/04/07/css-specificity-and-inheritance/">Digg this</a> | <a title="Stumble on StumbleUpon" href="http://www.stumbleupon.com/submit?url=http://www.smashingmagazine.com/2010/04/07/css-specificity-and-inheritance/">Stumble on StumbleUpon!</a> | <a title="Tweet us!" href="http://twitter.com/home?status=@tweetmeme%20@smashingmag%20Reading%20&#39;CSS%20Specificity%20And%20Inheritance&#39;%20http://www.smashingmagazine.com/2010/04/07/css-specificity-and-inheritance/">Tweet it!</a> | <a title="Bookmark in Reddit" href="http://reddit.com/submit?url=http://www.smashingmagazine.com/2010/04/07/css-specificity-and-inheritance/">Submit to Reddit</a> | <a href="http://forum.smashingmagazine.com/">Forum Smashing Magazine</a><br /> Post tags: <a href="http://www.smashingmagazine.com/tag/css/" rel="tag">CSS</a><br /> </small></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2010/04/07/css-specificity-and-inheritance/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Cloudkick Broadens its Scope: Now Monitors the Datacenter</title>
		<link>http://www.glennmarcus.com/blog/2010/03/31/cloudkick-broadens-its-scope-now-monitors-the-datacenter/</link>
		<comments>http://www.glennmarcus.com/blog/2010/03/31/cloudkick-broadens-its-scope-now-monitors-the-datacenter/#comments</comments>
		<pubDate>Wed, 31 Mar 2010 22:00:00 +0000</pubDate>
		<dc:creator>Mike Kirkwood</dc:creator>
				<category><![CDATA[startup]]></category>
		<category><![CDATA[Announcements]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/509acb4a7fb99f2f</guid>
		<description><![CDATA[<p><img alt="cloudkick hyrbid" src="http://www.readwriteweb.com/cloud/CloudKickhybrid_small.png" width="150" height="150"/>Cloudkick is a cloud monitoring start-up that helps system admins manage cloud servers.  Today, the company announced it is getting physical, bringing its cloud monitoring capabilities to internally hosted servers and virtual machines.  </p>
<p>The company has had a lot of success in helping companies who startup in the cloud and start to achieve scale.  It already has a host of hot startup companies including <a href="http://posterous.com/">Posterous</a>, <a href="http://bu.mp/">Bump Technologies</a>, and <a href="http://www.urbanairship.com">Urban Airship</a>.  Through listening to users, the company decided to offer local server support to merge its view of all server assets for these organizations.</p>
<p align="right"><em>Sponsor</em><br /><a href="http://d.ads.readwriteweb.com/ck.php?n=18938&#38;cb=18938"><img src="http://d.ads.readwriteweb.com/avw.php?zoneid=14&#38;cb=18938&#38;n=18938" border="0" alt=""/></a></p>
<h2>What is CloudKick?</h2>
<p>Cloudkick enables a company to manage internally hosted servers and run the Cloudkick&#8217;s agent and report into the same console as your cloud computing infrastructure from AWS, RackSpace, SliceHost and others.  When installed, the CloudKick agent will respond to status checks from the Cloudkick monitoring solution, which itself is a distributed cloud application.  Cloudkick <a href="https://www.cloudkick.com/providers/">supports a host of cloud provider solutions</a> and shares a report of feature.</p>
<p><img alt="cloudKick office" src="http://www.readwriteweb.com/cloud/cloudKick.jpg" width="320" height="232"/>We met with the company at their offices in San Francisco.  Upon entry to the warehouse, called &#8220;<a href="http://foundsf.org/index.php?title=The_Farm">The Farm</a>&#8221; near the Mission District, we realized that was a <a href="https://www.cloudkick.com/about">true technology startup</a>, founded by system administrators trying to make their jobs easier.  The team participated in Y-Combinator and has received an initial capital infusion by Avalon Ventures.</p>
<p>The Cloudkick system offers consolidated server reports and shows server events by polling registered clients in cloud (and now data centers) and piping them to Cloudkick&#8217;s multi-tentant event aggregator. </p>
<p>The tools are modeled after administrative tools&#8230;</p>]]></description>
			<content:encoded><![CDATA[<p><img alt="cloudkick hyrbid" src="http://www.readwriteweb.com/cloud/CloudKickhybrid_small.png" width="150" height="150"/>Cloudkick is a cloud monitoring start-up that helps system admins manage cloud servers.  Today, the company announced it is getting physical, bringing its cloud monitoring capabilities to internally hosted servers and virtual machines.  </p>
<p>The company has had a lot of success in helping companies who startup in the cloud and start to achieve scale.  It already has a host of hot startup companies including <a href="http://posterous.com/">Posterous</a>, <a href="http://bu.mp/">Bump Technologies</a>, and <a href="http://www.urbanairship.com">Urban Airship</a>.  Through listening to users, the company decided to offer local server support to merge its view of all server assets for these organizations.</p>
<p align="right"><em>Sponsor</em><br /><a href="http://d.ads.readwriteweb.com/ck.php?n=18938&amp;cb=18938"><img src="http://d.ads.readwriteweb.com/avw.php?zoneid=14&amp;cb=18938&amp;n=18938" border="0" alt=""/></a></p>
<h2>What is CloudKick?</h2>
<p>Cloudkick enables a company to manage internally hosted servers and run the Cloudkick&#8217;s agent and report into the same console as your cloud computing infrastructure from AWS, RackSpace, SliceHost and others.  When installed, the CloudKick agent will respond to status checks from the Cloudkick monitoring solution, which itself is a distributed cloud application.  Cloudkick <a href="https://www.cloudkick.com/providers/">supports a host of cloud provider solutions</a> and shares a report of feature.</p>
<p><img alt="cloudKick office" src="http://www.readwriteweb.com/cloud/cloudKick.jpg" width="320" height="232"/>We met with the company at their offices in San Francisco.  Upon entry to the warehouse, called &#8220;<a href="http://foundsf.org/index.php?title=The_Farm">The Farm</a>&#8221; near the Mission District, we realized that was a <a href="https://www.cloudkick.com/about">true technology startup</a>, founded by system administrators trying to make their jobs easier.  The team participated in Y-Combinator and has received an initial capital infusion by Avalon Ventures.</p>
<p>The Cloudkick system offers consolidated server reports and shows server events by polling registered clients in cloud (and now data centers) and piping them to Cloudkick&#8217;s multi-tentant event aggregator. </p>
<p>The tools are modeled after administrative tools like Cacti, Nagios, and Munin, but are delivered on on top of an agent-driven real time view of the underlying assets of server infrastructure.</p>
<p>When checking out the demonstration, we also noted that the browser is updated in real-time as events are polled.  This keeps the information fresh without having to re-check and brings the best of browser based real-time communication to system administrations.</p>
<p>Cloudkick&#8217;s implementation is simple and elegant.  The young company is demonstrating product leadership by living the mantra of simplicity and utility.</p>
<p>Here&#8217;s a sample of the graphs from <a href="https://www.cloudkick.com/features">CloudKick&#8217;s feature inventory</a>.</p>
<p><img alt="cloudKick Graphs" src="http://www.readwriteweb.com/cloud/cloudKickGraphs.jpg" width="610" height="568"/></p>
<h2>Monitoring Every Server</h2>
<p><img alt="Cloudkick Tools" src="http://www.readwriteweb.com/cloud/cloudkickmany_tools.png" width="200" height="200"/>The goal of this release is to bring servers from the datacenter to power of cloud monitoring.  It allows a larger and larger region of infrastructure to rely on outside controls to monitor it&#8217;s health and well being.  </p>
<p>One feature we we intrigued by with Cloudkick was the ability to tag and filter groups of hosts, and to then set rules across them.  For example, tagging all servers &#8220;web apps&#8221; allows a rule to quickly set custom rules for checking up time.</p>
<p>The company offers an <a href="https://support.cloudkick.com/API">API</a> for its services and uses 2-legged <a href="http://oauth.net/">OAuth</a> for API authentication.  OAuth is &#8220;an open protocol to allow secure API authorization  in a simple and standard method from desktop and web applications.&#8221;.   The company also offers a proxy service that streamlines and secures the connections for hosts that will connect to the Cloudkick services. </p>
<p>Cloudkick is a cloud company monitoring clouds and shows us in many ways the architecture of the future.  In one of the blog posts from company, they share &#8220;<a href="https://www.cloudkick.com/blog/2010/mar/02/4_months_with_cassandra/">love affair with cassandra</a>&#8221; and how multi-master database technology is an enabler for co-location of server assets in infrastructure clouds.</p>
<p><img alt="cassandra_logo.png" src="http://www.readwriteweb.com/cloud/cassandra_logo.png" width="500" height="100"/></p>
<p>Where does Cloudkick go from here?
</p>
<p><strong><a href="http://www.readwriteweb.com/cloud/2010/03/cloudkick-monitors-cloud.php#comments-open">Discuss</a></strong>
<p><iframe src="http://feedads.g.doubleclick.net/~ah/f/bh8m03d07dnj95a0qa1ma5k32c/300/250?ca=1&amp;fh=280#http%3A%2F%2Fwww.readwriteweb.com%2Fcloud%2F2010%2F03%2Fcloudkick-monitors-cloud.php" width="100%" height="280" frameborder="0" scrolling="no" marginwidth="0" marginheight="0"></iframe></p>
<div>
<a href="http://feeds.feedburner.com/~ff/readwriteweb?a=sveP4Wx5nb8:StZ1HW3Mvi4:FFnlKYwJmN0"><img src="http://feeds.feedburner.com/~ff/readwriteweb?d=FFnlKYwJmN0" border="0"/></a> <a href="http://feeds.feedburner.com/~ff/readwriteweb?a=sveP4Wx5nb8:StZ1HW3Mvi4:Ij26kaj3iuU"><img src="http://feeds.feedburner.com/~ff/readwriteweb?d=Ij26kaj3iuU" border="0"/></a> <a href="http://feeds.feedburner.com/~ff/readwriteweb?a=sveP4Wx5nb8:StZ1HW3Mvi4:C2pbw5bZMiI"><img src="http://feeds.feedburner.com/~ff/readwriteweb?d=C2pbw5bZMiI" border="0"/></a> <a href="http://feeds.feedburner.com/~ff/readwriteweb?a=sveP4Wx5nb8:StZ1HW3Mvi4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/readwriteweb?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds.feedburner.com/~ff/readwriteweb?a=sveP4Wx5nb8:StZ1HW3Mvi4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/readwriteweb?i=sveP4Wx5nb8:StZ1HW3Mvi4:V_sGLiPBpWU" border="0"/></a> <a href="http://feeds.feedburner.com/~ff/readwriteweb?a=sveP4Wx5nb8:StZ1HW3Mvi4:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/readwriteweb?i=sveP4Wx5nb8:StZ1HW3Mvi4:gIN9vFwOqvQ" border="0"/></a> <a href="http://feeds.feedburner.com/~ff/readwriteweb?a=sveP4Wx5nb8:StZ1HW3Mvi4:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/readwriteweb?i=sveP4Wx5nb8:StZ1HW3Mvi4:F7zBnMyn0Lo" border="0"/></a> <a href="http://feeds.feedburner.com/~ff/readwriteweb?a=sveP4Wx5nb8:StZ1HW3Mvi4:OqabYuBsmOY"><img src="http://feeds.feedburner.com/~ff/readwriteweb?d=OqabYuBsmOY" border="0"/></a>
</div>
<p><img src="http://feeds.feedburner.com/~r/readwriteweb/~4/sveP4Wx5nb8" height="1" width="1"/></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2010/03/31/cloudkick-broadens-its-scope-now-monitors-the-datacenter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Short Guide To Open-Source And Similar Licenses</title>
		<link>http://www.glennmarcus.com/blog/2010/03/24/a-short-guide-to-open-source-and-similar-licenses/</link>
		<comments>http://www.glennmarcus.com/blog/2010/03/24/a-short-guide-to-open-source-and-similar-licenses/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 11:01:25 +0000</pubDate>
		<dc:creator>Cameron Chapman</dc:creator>
				<category><![CDATA[consulting]]></category>
		<category><![CDATA[workflow]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/f3a5b416c8c8d47b</guid>
		<description><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"> <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in A Short Guide To Open-Source And Similar Licenses" border="0"/><br /> <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in A Short Guide To Open-Source And Similar Licenses"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in A Short Guide To Open-Source And Similar Licenses"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in A Short Guide To Open-Source And Similar Licenses"/></a></div>
</td>
</tr>
</table>
<p>Many developers and designers want to release their work into the world as open-source projects. They want others to be able to build on and share their code. The open-source community is vibrant because of this. Open-source software is available for virtually any application you could think of. Most designers use open-source software or code on a regular basis (WordPress, Drupal and many other CMSâ€™ are open source).</p>
<p><a href="http://www.flickr.com/photos/massimobarbieri/2162544547/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/03/opensourceubuntu.jpg" alt="Opensourceubuntu in A Short Guide To Open-Source And Similar Licenses" width="500" height="333"/></a></p>
<p>But many developers and designers donâ€™t have a clear picture of what the different open-source licenses really mean. What rights are they relinquishing when they choose an open-source license? Without knowing exactly what the licenses mean and how theyâ€™re best applied, developers canâ€™t make informed decisions about which is best for their work.</p>
<p>[By the way, what was the last time you visited our sister site <a href="http://creatives.commindo-media.de/www/delivery/ck.php?oaparams=2__bannerid=1250__zoneid=0__cb=81f776ed7f__oadest=http%3A%2F%2Fwww.noupe.com">Noupe</a>? Subscribe to Noupe's feed for more inspirational and design-related articles.]</p>
<h3>What Is Licensing?</h3>
<p>A lot of confusion is out there about what exactly licensing means. When you license your work, youâ€™re not giving away any of your rights. You still hold the original copyright (or patent if you have one) on that work. What a license does is grant specific permissions for others to use that work.</p>
<p>Licensing is a great alternative to just releasing your work into the public domain or granting permissions on a case-by-case basis. By releasing into the public domain, you relinquish any copyright, and no one is obligated to list you as the original author or contributor. In the latter case, you may end up&#8230;</p>]]></description>
			<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"> <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in A Short Guide To Open-Source And Similar Licenses" border="0"/><br /> <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in A Short Guide To Open-Source And Similar Licenses"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in A Short Guide To Open-Source And Similar Licenses"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in A Short Guide To Open-Source And Similar Licenses"/></a></div>
</td>
</tr>
</table>
<p>Many developers and designers want to release their work into the world as open-source projects. They want others to be able to build on and share their code. The open-source community is vibrant because of this. Open-source software is available for virtually any application you could think of. Most designers use open-source software or code on a regular basis (WordPress, Drupal and many other CMSâ€™ are open source).</p>
<p><a href="http://www.flickr.com/photos/massimobarbieri/2162544547/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/03/opensourceubuntu.jpg" alt="Opensourceubuntu in A Short Guide To Open-Source And Similar Licenses" width="500" height="333"/></a></p>
<p>But many developers and designers donâ€™t have a clear picture of what the different open-source licenses really mean. What rights are they relinquishing when they choose an open-source license? Without knowing exactly what the licenses mean and how theyâ€™re best applied, developers canâ€™t make informed decisions about which is best for their work.</p>
<p>[By the way, what was the last time you visited our sister site <a href="http://creatives.commindo-media.de/www/delivery/ck.php?oaparams=2__bannerid=1250__zoneid=0__cb=81f776ed7f__oadest=http%3A%2F%2Fwww.noupe.com">Noupe</a>? Subscribe to Noupe's feed for more inspirational and design-related articles.]</p>
<h3>What Is Licensing?</h3>
<p>A lot of confusion is out there about what exactly licensing means. When you license your work, youâ€™re not giving away any of your rights. You still hold the original copyright (or patent if you have one) on that work. What a license does is grant specific permissions for others to use that work.</p>
<p>Licensing is a great alternative to just releasing your work into the public domain or granting permissions on a case-by-case basis. By releasing into the public domain, you relinquish any copyright, and no one is obligated to list you as the original author or contributor. In the latter case, you may end up spending more time dealing with individual permissions than designing or developing.</p>
<p><a href="http://en.wikipedia.org/wiki/Open-source_license">Open-source licenses</a> make it easy for others to contribute to a project without having to seek special permission. It also protects you as the original creator, making sure you at least get some credit for your contributions. It also helps to prevent others from claiming your work as their own.</p>
<h3>GNU General Public License</h3>
<p>The <a href="http://www.opensource.org/licenses/gpl-2.0.php">GNU General Public Licence</a> (GPL) is probably one of the most commonly used licenses for open-source projects. The GPL grants and guarantees a wide range of rights to developers who work on open-source projects. Basically, it allows users to legally copy, distribute and modify software. This means you can:</p>
<ul>
<li><strong>Copy the software.</strong><br /> Copy it onto your own servers, your clientâ€™s servers, your own computer, pretty much anywhere you want. Thereâ€™s no limit to the number of copies you can make.</li>
<li><strong>Distribute the software however you want.</strong><br /> Provide a download link on your website. Put the software on a bunch of thumb drives and give them away. Print out the source code and throw it from the rooftops (please donâ€™t, though, because that would waste a lot of paper and make a mess).</li>
<li><strong>Charge a fee to distribute the software.</strong><br /> If you want to charge someone to provide the software, set it up on their website or do anything else related to it, you can do so. <em>But</em>, you must give them a copy of the GNU GPL, which basically tells them that they could probably get the software elsewhere for free. Best to be up front about that, and about why youâ€™re charging them.</li>
<li><strong>Make whatever modifications to the software you want.</strong><br /> If you want to add or remove functionality, go ahead. If you want to use a portion of the code in another project, you can. The only catch is that the other project must also be released under the GPL.</li>
</ul>
<p>Please note that it is very important to see source and binaries distribution as two very different things. Also, there are issues and restrictions with some licenses when used with applications released under â€œeach otherâ€. You can dive into more details in the detailed article <a href="http://www.softwarefreedom.org/resources/2008/compliance-guide.html">Practical Guide to GPL Compliance</a> (via <a href="http://www.twitter.com/PierreJoye">@PierreJoye</a>). To use the GPL, you have to include certain information in the softwareâ€™s code, along with a copy of the license.</p>
<h4>GNU Lesser General Public License</h4>
<p>You should be aware of another GNU license: the <a href="http://www.opensource.org/licenses/lgpl-2.1.php">Lesser General Public Licence</a> (LGPL). It grants fewer rights to a work than the standard GPL. Generally, the LGPL is appropriate for libraries that want to allow linking from non-GPL and non-open-source software. Because the GPL requires that other software with parts of licensed code to also be licensed under the GPL, developers cannot use GPL-licensed code for paid and proprietary software. The LGPL negates this by not requiring other projects with parts of the code to be similarly licensed.</p>
<h3>BSD License</h3>
<p>BSD licenses represent a family of permissive free software licenses that have fewer restrictions on distribution compared to other free software licenses such as the GNU General Public License. Among different versions of the license two versons are particularly important: the New BSD License/Modified BSD License, and the Simplified BSD License/FreeBSD License. Both have been verified as GPL-compatible free software licenses, and have been accepted as open source licenses by the Open Source Initiative.</p>
<p>The New BSD License (â€3-clause licenseâ€) allows unlimited redistribution for any purpose as long as its copyright notices and the licenseâ€™s disclaimers of warranty are maintained. The license also contains a clause restricting use of the names of contributors for endorsement of a derived work without specific permission. The primary difference between the New BSD License and the Simplified BSD license is that the latter omits the non-endorsement clause.</p>
<h3>MIT License</h3>
<p>The <a href="http://www.opensource.org/licenses/mit-license.php">MIT License</a> is the shortest and probably broadest of all the popular open-source licenses. Its terms are very loose and more permissive than most other licenses. The basic provision of the license (minus the information that it is provided without warranty, which comprises the final paragraph) is as follows:</p>
<blockquote><p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the â€œSoftwareâ€), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
</blockquote>
<p>What this means is that:</p>
<ul>
<li>You can use, copy and modify the software however you want. No one can prevent you from using it on any project, from copying it however many times you want and in whatever format you like, or from changing it however you want.</li>
<li>You can give the software away for free or sell it. You have no restrictions on how to distribute it.</li>
<li>The only restriction is that it be accompanied by the license agreement.</li>
</ul>
<p>The MIT License is the least restrictive license out there. It basically says that anyone can do whatever they want with the licensed material, as long as itâ€™s accompanied by the license.</p>
<h3>Apache License</h3>
<p>The <a href="http://www.apache.org/licenses/">Apache License</a>, Version 2.0, grants a number of rights to users. These rights can be applied to both copyrights and patents. Because some licenses can be applied only to copyrights and not patents, this flexibility would be an obvious factor in a patent developerâ€™s choice of license (read <a href="http://www.howstuffworks.com/question492.htm">this article on How Stuff Works</a> for an explanation of the difference).</p>
<p>Here are some more details on what the Apache License allows:</p>
<ul>
<li><strong>Rights are perpetual.</strong><br /> Once theyâ€™ve been granted, you can continue to use them forever.</li>
<li><strong>Rights are worldwide.</strong><br /> If the rights are granted in one country, then theyâ€™re granted in all countries. For example, if youâ€™re in the US and the original license was granted in India, youâ€™re not prevented from using the code under the license.</li>
<li><strong>Rights are granted for no fee or royalty.</strong><br /> Not only will you not be charged any kind of up-front usage fee, but you will not be charged fees on a per-usage or any other basis either.</li>
<li><strong>Rights are non-exclusive.</strong><br /> You can use the licensed work, and so can anyone else.</li>
<li><strong>Rights are irrevocable.</strong><br /> No one can take these rights away once theyâ€™re granted. In other words, you donâ€™t need to worry that down the road, when youâ€™ve created some awesome derivative of the licensed code, someone will swoop in and say, â€œSorry, you canâ€™t use this code anymore.â€ (A clause in the license states that if you sue someone over patent infringement on anything under this license, then your license is terminated, but that only applies to patented work, and as long as you donâ€™t sue anyone over the work, you wonâ€™t have to worry about it.)</li>
</ul>
<p>Redistributing code also has special requirements, mostly pertaining to giving proper credit to those who have worked on the code and to maintaining the same license.</p>
<h3>Creative Commons</h3>
<p>Creative Commons (CC) licenses arenâ€™t quite open-source licenses, but they are commonly used for design projects. A wide variety of CC licenses is available, each granting certain rights. A CC license has four basic parts, which can be enacted individually or in combination. Hereâ€™s an overview of the parts:</p>
<ul>
<li><strong>Attribution</strong><br /> The author must be attributed as the creator of the work. Beyond that, the work can be modified, distributed, copied and otherwise used.</li>
<li><strong>Share Alike</strong><br /> The work can be modified, distributed and so forth, but only under the same CC license.</li>
<li><strong>Non-Commercial</strong><br /> The work can be modified, distributed and so on, but not for commercial purposes. The language about what constitutes â€œcommercialâ€ is a bit vague (no express definition is provided), so you may want to clarify this in your own projects. For example, some might interpret â€œnon-commercialâ€ as simply meaning that you canâ€™t sell the work. Others might take it to mean that you canâ€™t even put the work on a website that has advertising. Still others might consider something is â€œcommercialâ€ only if it makes a profit.</li>
<li><strong>No Derivative Works</strong><br /> This means you can copy and distribute the licensed work, but you canâ€™t modify it in any way or create work based on the original.</li>
</ul>
<p>As mentioned, these parts of the CC license terms can be combined. The most restrictive license would be the â€œAttribution, Non-Commercial, No Derivativesâ€ license, which means that you can freely share the work, but not change it or charge for it, and you must attribute it to the creator. This is a good license to get your work out there but still maintain more or less complete control over how it is used. The least restrictive would be the â€œAttributionâ€ license, which means that as long as people credit you, they can do whatever they like with the work.</p>
<p>CC licenses are used more for design work than development, but nothing bars you from using it for the latter. Just be aware of exactly what is and is not covered under each part.</p>
<h3>Further Resources</h3>
<ul>
<li><a href="http://creativecommons.org/about/licenses">Creative Commons Licenses</a><br /> The official page, with descriptions of the CC licenses and links to the legal copy of each.</li>
<li><a href="http://www.opensource.org/licenses/alphabetical">Open Source Initiative</a><br /> A fantastic website that has information on the vast majority of open-source licenses.</li>
<li><a href="http://developer.kde.org/documentation/licensing/licenses_summary.html">Open Source Licenses Comparison</a><br /> A chart comparing major open-source licenses.</li>
<li><a href="http://openacs.org/about/licensing/open-source-licensing">Understanding Open-Source Licensing</a><br /> A pretty thorough overview of what open-source licenses are and what theyâ€™re good for.</li>
<li><a href="http://blogs.zdnet.com/Burnette/?p=130">HOW TO: Pick an Open Source License</a><br /> An overview of what to consider when choosing an open-source license.</li>
</ul>
<p><em>(al)</em></p>
<hr />
<p><small>Â© Cameron Chapman for <a href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2010. | <a href="http://www.smashingmagazine.com/2010/03/24/a-short-guide-to-open-source-and-similar-licenses/">Permalink</a> | <a href="http://www.smashingmagazine.com/2010/03/24/a-short-guide-to-open-source-and-similar-licenses/#comments">44 comments</a> | <a title="Bookmark in del.icio.us" href="http://del.icio.us/post?url=http://www.smashingmagazine.com/2010/03/24/a-short-guide-to-open-source-and-similar-licenses/&amp;title=A%20Short%20Guide%20To%20Open-Source%20And%20Similar%20Licenses">Add to del.icio.us</a> | <a title="Bookmark in Digg" href="http://digg.com/submit?phase=2&amp;url=http://www.smashingmagazine.com/2010/03/24/a-short-guide-to-open-source-and-similar-licenses/">Digg this</a> | <a title="Stumble on StumbleUpon" href="http://www.stumbleupon.com/submit?url=http://www.smashingmagazine.com/2010/03/24/a-short-guide-to-open-source-and-similar-licenses/">Stumble on StumbleUpon!</a> | <a title="Tweet us!" href="http://twitter.com/home?status=@tweetmeme%20@smashingmag%20Reading%20&#39;A%20Short%20Guide%20To%20Open-Source%20And%20Similar%20Licenses&#39;%20http://www.smashingmagazine.com/2010/03/24/a-short-guide-to-open-source-and-similar-licenses/">Tweet it!</a> | <a title="Bookmark in Reddit" href="http://reddit.com/submit?url=http://www.smashingmagazine.com/2010/03/24/a-short-guide-to-open-source-and-similar-licenses/">Submit to Reddit</a> | <a href="http://forum.smashingmagazine.com/">Forum Smashing Magazine</a><br /> Post tags: <br /> </small></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2010/03/24/a-short-guide-to-open-source-and-similar-licenses/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>45 Fresh Useful JavaScript and jQuery Techniques and Tools</title>
		<link>http://www.glennmarcus.com/blog/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/</link>
		<comments>http://www.glennmarcus.com/blog/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 15:14:41 +0000</pubDate>
		<dc:creator>Smashing Editorial</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[ui]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[user/12651333281871808648/label/ui]]></category>
		<category><![CDATA[user/12651333281871808648/label/web20]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/read]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/tracking-body-link-used]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/75f88a06be3ae8fd</guid>
		<description><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"> <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" border="0"/><br /> <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a></div>
</td>
</tr>
</table>
<p>Yes, this is another round-up of <strong>fresh and useful Javascript techniques, tools and resources</strong>. But donâ€™t close the tab yet, as you might find this one very useful. In this selection we present calendars, forms, buttons, navigation, debugging, optimization and compatibility tables as well as handy resources and tools. We also cover various jQuery-plugins that will help you extend the functionality of your website and improve user experience with ready components or coding solutions.</p>
<p>The last section also covers a number of useful educational resources such as a compilation of useful JavaScript coding practices, a detailed comparison of JavaScript frameworks and general JavaScript programming conventions. We are looking forward to your feedback.</p>
<p>You may be interested in the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/">50 Fresh JavaScript Tools That Will Improve Your Workflow</a></li>
<li><a href="http://www.smashingmagazine.com/2010/01/12/45-powerful-css-javascript-techniques/">45 Powerful CSS/JavaScript-Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2009/03/08/70-new-useful-ajax-and-javascript-techniques/">70 Useful AJAX And JavaScript Techniques</a></li>
</ul>
<p> [By the way: The <a href="http://www.smashingmagazine.com/network-posts/">network tab</a> (on the top of the page) is updated several times a day. It features manually selected articles from the best web design blogs!]<br />
<h3>Calendars and Timelines</h3>
</p><p><a href="http://www.radoslavdimov.com/jquery-plugins/jquery-plugin-digiclock/">jDigiClock â€“ Digital Clock (HTC Hero inspired)</a><br /> jDigiClock is a jQuery plugin inspired from HTC Hero Clock Widget.</p>
<p><a href="http://www.radoslavdimov.com/jquery-plugins/jquery-plugin-digiclock/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-82.jpg" alt="Javascript-techniques-82 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://home.comcast.net/~vonholdt/test/clock_slide/index.htm">jQuery Sliding Clock v1.1</a><br /> jQuery transpearant Slider clock with CSS sprites.</p>
<p><a href="http://home.comcast.net/~vonholdt/test/clock_slide/index.htm"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-67.jpg" alt="Javascript-techniques-67 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://home.jongsma.org/software/js/datepicker">Date / Time Picker</a><br /> Note that this control is not designed to work in IE6; although it will function correctly in most cases, the positioning of the calendar may be way off depending on how your page is styled.</p>
<p><a href="http://home.jongsma.org/software/js/datepicker"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-05.jpg" alt="Javascript-techniques-05 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>JavaScript Debugging and Validation Tools</h3>
<p><a href="http://www.mozilla.org/projects/venkman/">Venkman JavaScript Debugger project page</a><br /> Venkman is the code name for Mozillaâ€™s JavaScript Debugger. Venkman aims to provide a powerful JavaScript debugging environment&#8230;</p>]]></description>
			<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"> <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" border="0"/><br /> <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in 45 Fresh Useful JavaScript and jQuery Techniques and Tools"/></a></div>
</td>
</tr>
</table>
<p>Yes, this is another round-up of <strong>fresh and useful Javascript techniques, tools and resources</strong>. But donâ€™t close the tab yet, as you might find this one very useful. In this selection we present calendars, forms, buttons, navigation, debugging, optimization and compatibility tables as well as handy resources and tools. We also cover various jQuery-plugins that will help you extend the functionality of your website and improve user experience with ready components or coding solutions.</p>
<p>The last section also covers a number of useful educational resources such as a compilation of useful JavaScript coding practices, a detailed comparison of JavaScript frameworks and general JavaScript programming conventions. We are looking forward to your feedback.</p>
<p>You may be interested in the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/">50 Fresh JavaScript Tools That Will Improve Your Workflow</a></li>
<li><a href="http://www.smashingmagazine.com/2010/01/12/45-powerful-css-javascript-techniques/">45 Powerful CSS/JavaScript-Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2009/03/08/70-new-useful-ajax-and-javascript-techniques/">70 Useful AJAX And JavaScript Techniques</a></li>
</ul>
<p> [By the way: The <a href="http://www.smashingmagazine.com/network-posts/">network tab</a> (on the top of the page) is updated several times a day. It features manually selected articles from the best web design blogs!]<br />
<h3>Calendars and Timelines</h3>
<p><a href="http://www.radoslavdimov.com/jquery-plugins/jquery-plugin-digiclock/">jDigiClock â€“ Digital Clock (HTC Hero inspired)</a><br /> jDigiClock is a jQuery plugin inspired from HTC Hero Clock Widget.</p>
<p><a href="http://www.radoslavdimov.com/jquery-plugins/jquery-plugin-digiclock/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-82.jpg" alt="Javascript-techniques-82 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://home.comcast.net/~vonholdt/test/clock_slide/index.htm">jQuery Sliding Clock v1.1</a><br /> jQuery transpearant Slider clock with CSS sprites.</p>
<p><a href="http://home.comcast.net/~vonholdt/test/clock_slide/index.htm"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-67.jpg" alt="Javascript-techniques-67 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://home.jongsma.org/software/js/datepicker">Date / Time Picker</a><br /> Note that this control is not designed to work in IE6; although it will function correctly in most cases, the positioning of the calendar may be way off depending on how your page is styled.</p>
<p><a href="http://home.jongsma.org/software/js/datepicker"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-05.jpg" alt="Javascript-techniques-05 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>JavaScript Debugging and Validation Tools</h3>
<p><a href="http://www.mozilla.org/projects/venkman/">Venkman JavaScript Debugger project page</a><br /> Venkman is the code name for Mozillaâ€™s JavaScript Debugger. Venkman aims to provide a powerful JavaScript debugging environment for Gecko-based browsers namely Firefox 3.x, the Netscape 7.x series of browsers, Netscape 9.x series, Mozilla Seamonkey 1.x and Mozilla Seamonkey 2.x. It does not include Gecko-based browsers such as K-Meleon 1.x, Galeon 2.x and Netscape 8.x. The debugger is available as an add-on package in XPI format. Venkman JavaScript Debugger has been provided as part of the Mozilla install distribution since October 3rd 2001.</p>
<p><a href="http://www.mozilla.org/projects/venkman/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-14.jpg" alt="Javascript-techniques-14 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.my-debugbar.com/wiki/CompanionJS/HomePage"> CompanionJS</a><br /> Companion.JS (pronounced Companion dot JS or CJS) is a Javascript debugger for IE.</p>
<p><a href="http://www.my-debugbar.com/wiki/CompanionJS/HomePage"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-32.jpg" alt="Javascript-techniques-32 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://net.tutsplus.com/tutorials/javascript-ajax/how-to-test-your-javascript-code-with-qunit/">How to Test your JavaScript Code with QUnit</a><br /> QUnit is a powerful JavaScript unit testing framework that helps you to debug code. Itâ€™s written by members of the jQuery team, and is the official test suite for jQuery. But QUnit is general enough to test any regular JavaScript code, and itâ€™s even able to test server-side JavaScript via some JavaScript engine like Rhino or V8.</p>
<p><a href="http://net.tutsplus.com/tutorials/javascript-ajax/how-to-test-your-javascript-code-with-qunit/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-44.jpg" alt="Javascript-techniques-44 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://jsbin.com/">JS Bin â€“ Collaborative JavaScript Debugging</a><br /> JS Bin is an open source collaborative JavaScript debugging tool.</p>
<p><a href="http://jsbin.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-12.jpg" alt="Javascript-techniques-12 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>Forms, Buttons &amp; Navigation</h3>
<p><a href="http://tutorialzine.com/2009/10/google-wave-history-slider-jquery/">Making a Google Wave History Slider</a><br /> Here is shown how to  create a Google Wave-like history slider. Using it will enable visitors to go back and forth in time to view the changes that take  place on a comment thread.</p>
<p><a href="http://tutorialzine.com/2009/10/google-wave-history-slider-jquery/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-73.jpg" alt="Javascript-techniques-73 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://theodin.co.uk/blog/design/fancy-radio-buttons-jquery.html">Fancy Radio Buttons With jQuery</a><br /> Creation of 2 mandatory option sets that a user could choose, while hiding off the radio button inputs and using an anchor links to make it a bit more usable.</p>
<p><a href="http://theodin.co.uk/blog/design/fancy-radio-buttons-jquery.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-62.jpg" alt="Javascript-techniques-62 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.tutorial9.net/web-tutorials/creative-button-animations-with-sprites-and-jquery-part-2/">Creative Button Animations with Sprites and JQuery</a><br /> Fading hover effect for which the transition is smoothed with JavaScript, using jQuery library.</p>
<p><a href="http://www.tutorial9.net/web-tutorials/creative-button-animations-with-sprites-and-jquery-part-2/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-83.jpg" alt="Javascript-techniques-83 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.vileworks.com/password-unmasking">Password (un)Masking</a><br /> JavaScript jQuery that toggles the masking and unmasking of the password  field.</p>
<p><a href="http://www.vileworks.com/password-unmasking"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-68.jpg" alt="Javascript-techniques-68 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://css-tricks.com/jquery-magicline-navigation/">jQuery MagicLine Navigation</a><br /> These â€œslidingâ€ style navigation bars have been around a while, and turns out itâ€™s really pretty darn easy. Here are put two examples together.</p>
<p><a href="http://css-tricks.com/jquery-magicline-navigation/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-49.jpg" alt="Javascript-techniques-49 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://tympanus.net/codrops/2009/12/11/fixed-fade-out-menu-a-css-and-jquery-tutorial/">Fixed Fade Out Menu: A CSS and jQuery Tutorial</a><br /> The aim is to have a fixed navigation that follows the user when he scrolls, and only subtly showing itself by fading out and becoming almost transparent. When the user hovers over it, the menu then becomes opaque again.  Inside of the navigation we will have some links, a search input and a top and bottom button that let the user navigate to the top or the bottom of the page.</p>
<p><a href="http://tympanus.net/codrops/2009/12/11/fixed-fade-out-menu-a-css-and-jquery-tutorial/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-52.jpg" alt="Javascript-techniques-52 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://cssglobe.com/post/7161/jquery-plugin-simplest-twitterlike-dynamic-character-count-for-textareas">jQuery plugin: Simplest Twitter-like dynamic character count for textareas and input fields</a><br /> The best way to explain what this plugin does is to mention Twitter. Twitter posts are limited to 140 characters. While typing the Twitter post there is this always present information about how many characters the users have before reaching the limit. The information is not only provided merely by displaying a number, there are different colors applied to certain stages to notify the user about the status.</p>
<p><a href="http://www.csskarma.com/blog/sliding-labels-v2/">Sliding Labels v2</a><br /> Form label keeping the label inline, but sliding it off to the left rather than going away on click.</p>
<p><a href="http://www.csskarma.com/blog/sliding-labels-v2/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/03/javascript-techniques-87.jpg" alt="Javascript-techniques-87 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="100"/></a></p>
<p><a href="http://demos.usejquery.com/ketchup-plugin/index.html">Ketchup Plugin</a><br /> Ketchup is a slim jQuery Plugin that validates your forms. It aims to be very flexible and extendable for its appearance and functionality.</p>
<p><a href="http://demos.usejquery.com/ketchup-plugin/index.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-84.jpg" alt="Javascript-techniques-84 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>Layout tools</h3>
<p><a href="http://www.kromosome.net/cssdesignergrid/">jQuery {css}designerGrid Plugin</a><br /> {css} designerGrid is A jQuery Plugin developed for website interface developers who use the grid system of layout. {css} designerGrid is intended to assist these developers with CSS prototyping.</p>
<p><a href="http://www.kromosome.net/cssdesignergrid/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-80.jpg" alt="Javascript-techniques-80 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://code.google.com/p/css-template-layout/"> css-template-layout</a><br /> JavaScript (jQuery) implementation of the CSS Template Layout Module</p>
<p><a href="http://code.google.com/p/css-template-layout/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-33.jpg" alt="Javascript-techniques-33 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://blog.creativityden.com/fluid-grid-using-jquery/">How to create a fluid grid with jQuery</a><br /> Grid-based layout is probably the more preferred way to style up a webpage to give it more magazine-like look and feel. This tutorial is about how to use CSS and Javascript to create a fluid grid-based layout (See demo here). The algorithm/procedure used in this tutorial is very simple and straightforward. There are more advanced algorithms out there which can handle multiple scenarios. But the purpose is to understand the basic logic on how to create such layout. So here it goesâ€¦</p>
<p><a href="http://blog.creativityden.com/fluid-grid-using-jquery/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-51.jpg" alt="Javascript-techniques-51 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://code.google.com/p/closure-templates/">closure-templates</a><br /> Closure Templates are a client- and server-side templating system that helps you dynamically build reusable HTML and UI elements. They are easy to learn and customizable to fit your applicationâ€™s needs. Closure Templates support JavaScript and Java and use a data model and expression syntax that works for either language. You can also use the built-in message support to easily localize your applications.</p>
<p><a href="http://code.google.com/p/closure-templates/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-46.jpg" alt="Javascript-techniques-46 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>Useful jQuery Plugins</h3>
<p><a href="http://code.drewwilson.com/entry/tiptip-jquery-plugin">TipTip jQuery Plugin</a><br /> TipTip detects the edges of the browser window and will make sure the tooltip stays within the current window size. As a result the tooltip will adjust itself to be displayed above, below, to the left or to the right of the element with TipTip applied to it, depending on what is necessary to stay within the browser window. TipTip is a very lightweight and intelligent custom tooltip jQuery plugin. It uses ZERO images and is completely customizable via CSS. Itâ€™s also only 3.5kb minified!</p>
<p><a href="http://code.drewwilson.com/entry/tiptip-jquery-plugin"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-65.jpg" alt="Javascript-techniques-65 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://fredhq.com/projects/roundabout/">jQuery Roundabout</a><br /> Roundabout is a jQuery plugin that converts a structure of static HTML elements into a highly customizable turntable-like interactive area. (And now, not just turntables, but many shapes!)</p>
<p><a href="http://fredhq.com/projects/roundabout/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-69.jpg" alt="Javascript-techniques-69 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://jparse.kylerush.net/">jParse â€“ jQuery XML Parse Plugin</a><br /> jParse is a jQuery plugin that allows you to parse XML that was fetched with the jQuery .ajax method (making it fully customizable).</p>
<p><a href="http://jparse.kylerush.net/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-72.jpg" alt="Javascript-techniques-72 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://razorjack.net/quicksand/">jQuery Quicksand plugin</a><br /> Reorder and filter items with a nice shuffling animation.</p>
<p><a href="http://razorjack.net/quicksand/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-48.jpg" alt="Javascript-techniques-48 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://thinkinginweb.com/sections/articles/18-11-2009-typeQuery-change-website-typography-with-jquery.aspx"> typeQuery, change website typography with jquery</a><br />typeQuery gives the flexibility to change the font-family for everything you define with class, id, or tag, this example is referring to the selected item on a select object with id=â€tagâ€ and the font-family value at select object with id=â€familyâ€: <code>$($("#tag").val()).css("font-family", $("#family").val());</code></p>
<p><a href="http://thinkinginweb.com/sections/articles/18-11-2009-typeQuery-change-website-typography-with-jquery.aspx"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-70.jpg" alt="Javascript-techniques-70 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://lab.smashup.it/flip/">Flip! A jQuery plugin v0.9.9</a><br /> Flip is a jQuery plugin that will flip easily your elements in four directions.</p>
<p><a href="http://lab.smashup.it/flip/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-55.jpg" alt="Javascript-techniques-55 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.webresourcesdepot.com/data-encryption-with-javascript-jcryption/">Data Encryption With JavaScript: jCryption</a><br /> jCryption is a jQuery plugin for encrypting POST/GET data submitted by forms.  It uses public-key algorithm of RSA for the encryption &amp; has a PHP file for handling the decryption of data.</p>
<p><a href="http://www.webresourcesdepot.com/data-encryption-with-javascript-jcryption/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-24.jpg" alt="Javascript-techniques-24 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://trif3cta.com/blog/entry/jquery-plugins-under-4k/">Minimalist jQuery: 11 useful plugins under 4K</a><br /> jQuery makes our lives easier. So much so that itâ€™s tempting to use it  all the time, inadvertently slowing our page load times (cue <a href="http://developer.yahoo.com/yslow/">YSlow</a> and <a href="http://stevesouders.com/hammerhead/">Hammerhead</a>). Combining,  compressing, and delivering scripts at the end of your page helps in the  HTTP request department. On the file size front, below are jQuery  plugins that give solid bang for your performance buck.</p>
<p><a href="http://trif3cta.com/blog/entry/jquery-plugins-under-4k/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-79.jpg" alt="Javascript-techniques-79 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://jscott.me/jquery.undoable.html">Undo/Redo in jQuery</a><br /> An easy-to-use plugin for adding undo/redo capabilities to a jQuery application. It is based loosely on the Objective-C/Cocoa way of doing things.</p>
<p><a href="http://jscott.me/jquery.undoable.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-81.jpg" alt="Javascript-techniques-81 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://code.google.com/p/editease/">editease</a><br /> editEase â€“ jQuery CMS | no fuss, no database, no worries</p>
<p><a href="http://code.google.com/p/editease/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-78.jpg" alt="Javascript-techniques-78 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.jgc.org/blog/2009/10/what-is-jshub.html">jsHub</a><br /> jsHub is a single piece of JavaScript (a â€œtagâ€) that can handle reading different sorts of page information and then send them to many different vendorsâ€™ products. One piece of code to send to Google Analytics, Omniture SiteCatalyst, WebTrends and Mixpanel.  Instead of one piece of JavaScript per vendor, jsHub has a single piece of code (the â€œhubâ€) and plugins that know how to translate into the required wire protocol for each vendor. Vendors only maintain the plugin for their product.</p>
<p><a href="http://www.jgc.org/blog/2009/10/what-is-jshub.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-22.jpg" alt="Javascript-techniques-22 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>Educational JavaScript Resources and Tutorials</h3>
<p><a href="http://justin.harmonize.fm/index.php/2009/09/an-introduction-to-javascripts-this/">Caffeinated Simpleton </a><br /> JavaScript is an amazing little language, but itâ€™s got some quirks that turn a lot of people off. One of those quirks is <code>this</code>, and how itâ€™s not necessarily what you expect it to be. <code>this</code> isnâ€™t that complicated, but there are very few explanations of how it works on the internet. This article is an attempt to explain how <code>this</code> works and how to use it properly.</p>
<p><a href="http://justin.harmonize.fm/index.php/2009/09/an-introduction-to-javascripts-this/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-07.jpg" alt="Javascript-techniques-07 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.smashingmagazine.com/2009/08/01/what-you-need-to-know-about-javascript-scope/">What You Need To Know About JavaScript Scope</a><br /> This article discusses how JavaScript handles scope and how various JavaScript libraries provide methods for dealing with it and how they smooth out a few bumps. Weâ€™ll also look at how you can get back to basics and do some interesting scope wrangling without a library, a useful approach if youâ€™re writing code that needs to stand alone.</p>
<p><a href="http://www.smashingmagazine.com/2009/08/01/what-you-need-to-know-about-javascript-scope/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-25.jpg" alt="Javascript-techniques-25 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://ejohn.org/apps/learn/">Learning Advanced JavaScript</a><br /> A very nice tutorial to learn JavaScript, containing code and discussion from the upcoming book Secrets of the JavaScript Ninja by John Resig.</p>
<p><a href="http://ejohn.org/apps/learn/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-30.jpg" alt="Javascript-techniques-30 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.brucelawson.co.uk/2010/highlight-search-terms-automagically-with-javascript-and-mark/">Highlight search terms automagically with JavaScript and mark</a><br /> Script surrounding the search term(s) with the <code>mark</code> element  rather than a <code>span</code>, although the class <var>searchword</var> is retained in case you want to style these <code>mark</code>s differently from  others. In the CSS, the rule <code>article mark </code>is just added to turn it a gentle shade of pink.</p>
<p><a href="http://net.tutsplus.com/tutorials/javascript-ajax/10-super-helpful-traversing-functions-in-jquery/">10 Really Helpful Traversing Functions in jQuery</a><br /> With jQuery, selecting HTML elements is laughably easy. But at times, we may wish to further refine the selection, which can be a hassle when the HTML structure is complicated. In this tutorial, weâ€™ll explore ten ways that we can refine and extend a set of wrapped elements that we wish to operate upon.</p>
<p><a href="http://net.tutsplus.com/tutorials/javascript-ajax/10-super-helpful-traversing-functions-in-jquery/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-74.jpg" alt="Javascript-techniques-74 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.catswhocode.com/blog/using-keyboard-shortcuts-in-javascript">Using keyboard shortcuts in Javascript</a><br /> If you want to enhance your web app, Javascript keyboards shortcuts is definitely something to consider. In this article, youâ€™ll learn to use JS keyboard shortcuts, with and without the JQuery framework.</p>
<p><a href="http://www.catswhocode.com/blog/using-keyboard-shortcuts-in-javascript"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-29.jpg" alt="Javascript-techniques-29 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://javascript.crockford.com/code.html">Code Conventions for the JavaScript Programming Language</a><br /> This is a set of coding conventions and rules for use in JavaScript programming.</p>
<p><a href="http://javascript.crockford.com/code.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-31.jpg" alt="Javascript-techniques-31 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.myphpetc.com/2009/03/jquery-select-element-cheat-sheet.html">jQuery â€“ Select element cheat sheet</a><br />This cheat sheet helps you to find the index of a selected option, set the selected option by value, set the selected option by text, insert a new option before or after another and get the text or value of the selected option.</p>
<p><a href="http://www.myphpetc.com/2009/03/jquery-select-element-cheat-sheet.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-76.jpg" alt="Javascript-techniques-76 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.ibm.com/developerworks/web/library/wa-jsframeworks/index.html">Compare JavaScript frameworks</a><br /> Modern Web sites and Web applications tend to rely quite heavily on client-side JavaScript to provide rich interactivity, particularly through the advent of asynchronous HTTP requests that do not require page refreshes to return data or responses from a server-side script or database system. In this article, you will discover how JavaScript frameworks make it easier and faster to create highly interactive and responsive Web sites and Web applications.</p>
<p><a href="http://www.ibm.com/developerworks/web/library/wa-jsframeworks/index.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-77.jpg" alt="Javascript-techniques-77 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://dailyjs.com/2010/01/27/pro-practices-1/"> Park your Horse, Code Cowboy: Professional JavaScript Workflows, Part 1</a><br /> In this series, weâ€™ll talk about tools &amp; techniques you can use to cover those Noâ€™s, and cut a lot of strife &amp; embarrassment from your JavaScript experience.</p>
<p><a href="http://dailyjs.com/2010/01/27/pro-practices-1/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-47.jpg" alt="Javascript-techniques-47 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://www.java2s.com/Code/JavaScriptReference/CatalogJavaScriptReference.htm">JavaScript Reference examples (example source code)</a><br /> JavaScript Reference examples, organized by Objects, Properties, Methods &amp; Collections. Some Event Handlers Reference are also available.</p>
<p><a href="http://www.java2s.com/Code/JavaScriptReference/CatalogJavaScriptReference.htm"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-20.jpg" alt="Javascript-techniques-20 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://dev.opera.com/articles/view/javascript-best-practices/">JavaScript best practices</a><br /> A compilation of best practices and good advice Iâ€™ve amassed over the years, much of it learnt the hard way (experimentation and suchlike). Take the advice below to heart and keep it in a part of your brain that has a quick access route so you can apply it without thinking about it. I am sure you will find things to disagree with, and that is a good thing â€“ you should question what you read, and strive to find better solutions. However, I have found that following these principles has made me a more effective developer and allowed other developers to build upon my work more easily.</p>
<p><a href="http://dev.opera.com/articles/view/javascript-best-practices/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-15.jpg" alt="Javascript-techniques-15 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<p><a href="http://wtfjs.com/">wtfjs</a><br /> JavaScript is a language we love despite it giving us so much to hate. This is a collection of those very special irregularities, inconstancies and just plain painfully unintuitive moments for the language of the web.</p>
<p><a href="http://wtfjs.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/javascript-techniques-41.jpg" alt="Javascript-techniques-41 in 45 Fresh Useful JavaScript and jQuery Techniques and Tools" width="480" height="300"/></a></p>
<h3>Related Posts</h3>
<p>You may be interested in the following related posts:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2009/06/21/50-fresh-javascript-tools-that-will-improve-your-workflow/">50 Fresh JavaScript Tools That Will Improve Your Workflow</a></li>
<li><a href="http://www.smashingmagazine.com/2010/01/12/45-powerful-css-javascript-techniques/">45 Powerful CSS/JavaScript-Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2009/03/08/70-new-useful-ajax-and-javascript-techniques/">70 Useful AJAX And JavaScript Techniques</a></li>
</ul>
<h3>Poll</h3>
<p> <a href="http://answers.polldaddy.com/poll/2842024/">What programming language should we cover in next round-up?</a><span style="font-size:9px"><a href="http://www.polldaddy.com">surveys</a></span> </p>
<hr />
<p><small>Â© Smashing Editorial for <a href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2010. | <a href="http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/">Permalink</a> | <a href="http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/#comments">63 comments</a> | <a title="Bookmark in del.icio.us" href="http://del.icio.us/post?url=http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/&amp;title=45%20Fresh%20Useful%20JavaScript%20and%20jQuery%20Techniques%20and%20Tools">Add to del.icio.us</a> | <a title="Bookmark in Digg" href="http://digg.com/submit?phase=2&amp;url=http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/">Digg this</a> | <a title="Stumble on StumbleUpon" href="http://www.stumbleupon.com/submit?url=http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/">Stumble on StumbleUpon!</a> | <a title="Tweet us!" href="http://twitter.com/home?status=@tweetmeme%20@smashingmag%20Reading%20&#39;45%20Fresh%20Useful%20JavaScript%20and%20jQuery%20Techniques%20and%20Tools&#39;%20http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/">Tweet it!</a> | <a title="Bookmark in Reddit" href="http://reddit.com/submit?url=http://www.smashingmagazine.com/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/">Submit to Reddit</a> | <a href="http://forum.smashingmagazine.com/">Forum Smashing Magazine</a><br /> Post tags: <a href="http://www.smashingmagazine.com/tag/ajax/" rel="tag">AJAX</a>, <a href="http://www.smashingmagazine.com/tag/javascript/" rel="tag">javascript</a>, <a href="http://www.smashingmagazine.com/tag/jquery/" rel="tag">jquery</a><br /> </small></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2010/03/12/45-fresh-useful-javascript-and-jquery-techniques-and-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Harmony: Canvas Drawing Tool</title>
		<link>http://www.glennmarcus.com/blog/2010/03/10/harmony-canvas-drawing-tool/</link>
		<comments>http://www.glennmarcus.com/blog/2010/03/10/harmony-canvas-drawing-tool/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 09:50:44 +0000</pubDate>
		<dc:creator>Michael Mahemoff</dc:creator>
				<category><![CDATA[fun]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Canvas]]></category>
		<category><![CDATA[Front Page]]></category>
		<category><![CDATA[Showcase]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/533583b5ccd152ca</guid>
		<description><![CDATA[<p></p>
<p><a href="http://mrdoob.com/lab/javascript/harmony/">Harmony</a> is a new drawing tool, a HTML5/Canvas experiment with great potential. It provides some unique brush styles, and can produce some great-looking charcoal pencil style sketches, among other things. Better to <a href="http://mrdoob.com/lab/javascript/harmony/">try it out</a> than explain it in words.</p>
<p>Creator Mr. Doob  (Richard Cabello) <a href="http://mrdoob.com/blog/post/689">explains</a> how he used Canvas to make it darker the more you draw over it:</p>
<blockquote><p>
The whole thing is quite modular so I can keep adding more brush styles whenever I get inspired. During the process I found out that, for some reason (apparently lack of hardware acceleration), Firefox and Opera do not support context.globalCompositeOperation = &#8216;darker&#8217;. This was on the HTML5 spec before but got removed. Just so you know what I&#8217;m talking about, this is like the &#8220;multiply&#8221; blending in Photoshop. Webkit does support it tho. I hope they put it back on the specs and all browsers support it.
</p>
</blockquote>
<p>You can also save images using data URI encoding.</p>
<p>As it works on webkit, he made sure it worked on the mobile Android and iPhone browsers. No multi-touch as yet, but the touch UI still makes a nice input mechanism.</p>
<p><a href="http://mrdoob.com/lab/javascript/harmony/"><img src="http://ajaxian.com/wp-content/images/harmony.jpg" alt="harmony" title="harmony" width="320" height="480"/></a></p>
<p>(Thanks <a href="http://twitter.com/FND">FND</a>)</p>
<div>
<a href="http://feeds.feedburner.com/~ff/ajaxian?a=9ASJDZ59k9Y:QoYCwb10r9k:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ajaxian?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds.feedburner.com/~ff/ajaxian?a=9ASJDZ59k9Y:QoYCwb10r9k:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/ajaxian?d=7Q72WNTAKBA" border="0"/></a> <a href="http://feeds.feedburner.com/~ff/ajaxian?a=9ASJDZ59k9Y:QoYCwb10r9k:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ajaxian?i=9ASJDZ59k9Y:QoYCwb10r9k:D7DqB2pKExk" border="0"/></a>
</div>
]]></description>
			<content:encoded><![CDATA[<p><embed src="http://www.youtube.com/v/To1A-EPz79w&amp;hl=en_US&amp;fs=1&amp;" allowScriptAccess="never" allowFullScreen="true" width="640" height="385" wmode="transparent" type="application/x-shockwave-flash"></embed></p>
<p><a href="http://mrdoob.com/lab/javascript/harmony/">Harmony</a> is a new drawing tool, a HTML5/Canvas experiment with great potential. It provides some unique brush styles, and can produce some great-looking charcoal pencil style sketches, among other things. Better to <a href="http://mrdoob.com/lab/javascript/harmony/">try it out</a> than explain it in words.</p>
<p>Creator Mr. Doob  (Richard Cabello) <a href="http://mrdoob.com/blog/post/689">explains</a> how he used Canvas to make it darker the more you draw over it:</p>
<blockquote><p>
The whole thing is quite modular so I can keep adding more brush styles whenever I get inspired. During the process I found out that, for some reason (apparently lack of hardware acceleration), Firefox and Opera do not support context.globalCompositeOperation = &#8216;darker&#8217;. This was on the HTML5 spec before but got removed. Just so you know what I&#8217;m talking about, this is like the &#8220;multiply&#8221; blending in Photoshop. Webkit does support it tho. I hope they put it back on the specs and all browsers support it.
</p>
</blockquote>
<p>You can also save images using data URI encoding.</p>
<p>As it works on webkit, he made sure it worked on the mobile Android and iPhone browsers. No multi-touch as yet, but the touch UI still makes a nice input mechanism.</p>
<p><a href="http://mrdoob.com/lab/javascript/harmony/"><img src="http://ajaxian.com/wp-content/images/harmony.jpg" alt="harmony" title="harmony" width="320" height="480"/></a></p>
<p>(Thanks <a href="http://twitter.com/FND">FND</a>)</p>
<div>
<a href="http://feeds.feedburner.com/~ff/ajaxian?a=9ASJDZ59k9Y:QoYCwb10r9k:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/ajaxian?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds.feedburner.com/~ff/ajaxian?a=9ASJDZ59k9Y:QoYCwb10r9k:7Q72WNTAKBA"><img src="http://feeds.feedburner.com/~ff/ajaxian?d=7Q72WNTAKBA" border="0"/></a> <a href="http://feeds.feedburner.com/~ff/ajaxian?a=9ASJDZ59k9Y:QoYCwb10r9k:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/ajaxian?i=9ASJDZ59k9Y:QoYCwb10r9k:D7DqB2pKExk" border="0"/></a>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2010/03/10/harmony-canvas-drawing-tool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GorillaPad Goes Magnetic, Letting You Attach a Tripod to Your Fridge [Gorillapod]</title>
		<link>http://www.glennmarcus.com/blog/2010/02/18/gorillapad-goes-magnetic-letting-you-attach-a-tripod-to-your-fridge-gorillapod/</link>
		<comments>http://www.glennmarcus.com/blog/2010/02/18/gorillapad-goes-magnetic-letting-you-attach-a-tripod-to-your-fridge-gorillapod/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 18:38:33 +0000</pubDate>
		<dc:creator>Adam Frucci</dc:creator>
				<category><![CDATA[gear]]></category>
		<category><![CDATA[Cameras]]></category>
		<category><![CDATA[Digital Cameras]]></category>
		<category><![CDATA[Gorillapod]]></category>
		<category><![CDATA[GorillaPod Magnetic]]></category>
		<category><![CDATA[Tripod]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/1f9338fa195cc8ac</guid>
		<description><![CDATA[<p><a rel="lytebox" href="http://cache.gawkerassets.com/assets/images/4/2010/02/gorillapodmagnetic.jpg"><img src="http://cache.gawkerassets.com/assets/images/4/2010/02/500x_gorillapodmagnetic.jpg" width="500"/></a><a href="http://gizmodo.com/t/gorillapod">GorillaPod</a>, the bendy tripods you know and love, just announced its newest version: <a title="Click here to read more posts tagged #gorillapodmagnetic" href="http://gizmodo.com/tag/gorillapodmagnetic/">GorillaPod Magnetic</a>. This guy has magnets on each of its feet, allowing you to stick it to pretty much any magnetic surface.</p>
<p>Of course, it&#8217;ll still work without sticking to a surface, as it&#8217;s still a normal GorillaPod above the feet. But if you feel the need to have your camera attached to the side of your car door, well, now you&#8217;ve got the ability to. It&#8217;ll be available in April.</p>
<p><br style="clear:both"/><br />
<br style="clear:both"/><br />
<a href="http://ads.pheedo.com/click.phdo?s=b4bd3162de45775df36c0fdace9c92f3&#38;p=1"><img alt="" style="border:0" border="0" src="http://ads.pheedo.com/img.phdo?s=b4bd3162de45775df36c0fdace9c92f3&#38;p=1"/></a><br />
<img alt="" height="0" width="0" border="0" src="http://a.rfihub.com/eus.gif?eui=2226"/>
<div>
<a href="http://feeds.gawker.com/~ff/gizmodo/full?a=9uMy63thPd4:LXoy6FLmv5g:H0mrP-F8Qgo"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=H0mrP-F8Qgo" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=9uMy63thPd4:LXoy6FLmv5g:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=9uMy63thPd4:LXoy6FLmv5g:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=9uMy63thPd4:LXoy6FLmv5g:D7DqB2pKExk" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=9uMy63thPd4:LXoy6FLmv5g:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=9uMy63thPd4:LXoy6FLmv5g:V_sGLiPBpWU" border="0"/></a>
</div>
<p><img src="http://feeds.feedburner.com/~r/gizmodo/full/~4/9uMy63thPd4" height="1" width="1"/></p>
]]></description>
			<content:encoded><![CDATA[<p><a rel="lytebox" href="http://cache.gawkerassets.com/assets/images/4/2010/02/gorillapodmagnetic.jpg"><img src="http://cache.gawkerassets.com/assets/images/4/2010/02/500x_gorillapodmagnetic.jpg" width="500"/></a><a href="http://gizmodo.com/t/gorillapod">GorillaPod</a>, the bendy tripods you know and love, just announced its newest version: <a title="Click here to read more posts tagged #gorillapodmagnetic" href="http://gizmodo.com/tag/gorillapodmagnetic/">GorillaPod Magnetic</a>. This guy has magnets on each of its feet, allowing you to stick it to pretty much any magnetic surface.</p>
<p>Of course, it&#8217;ll still work without sticking to a surface, as it&#8217;s still a normal GorillaPod above the feet. But if you feel the need to have your camera attached to the side of your car door, well, now you&#8217;ve got the ability to. It&#8217;ll be available in April.</p>
<p><br style="clear:both"/><br />
<br style="clear:both"/><br />
<a href="http://ads.pheedo.com/click.phdo?s=b4bd3162de45775df36c0fdace9c92f3&amp;p=1"><img alt="" style="border:0" border="0" src="http://ads.pheedo.com/img.phdo?s=b4bd3162de45775df36c0fdace9c92f3&amp;p=1"/></a><br />
<img alt="" height="0" width="0" border="0" src="http://a.rfihub.com/eus.gif?eui=2226"/>
<div>
<a href="http://feeds.gawker.com/~ff/gizmodo/full?a=9uMy63thPd4:LXoy6FLmv5g:H0mrP-F8Qgo"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=H0mrP-F8Qgo" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=9uMy63thPd4:LXoy6FLmv5g:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=9uMy63thPd4:LXoy6FLmv5g:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=9uMy63thPd4:LXoy6FLmv5g:D7DqB2pKExk" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=9uMy63thPd4:LXoy6FLmv5g:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=9uMy63thPd4:LXoy6FLmv5g:V_sGLiPBpWU" border="0"/></a>
</div>
<p><img src="http://feeds.feedburner.com/~r/gizmodo/full/~4/9uMy63thPd4" height="1" width="1"/></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2010/02/18/gorillapad-goes-magnetic-letting-you-attach-a-tripod-to-your-fridge-gorillapod/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Infinitec Unlimited Storage Streaming Flash Drive [USB]</title>
		<link>http://www.glennmarcus.com/blog/2010/02/18/infinitec-unlimited-storage-streaming-flash-drive-usb/</link>
		<comments>http://www.glennmarcus.com/blog/2010/02/18/infinitec-unlimited-storage-streaming-flash-drive-usb/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 15:56:13 +0000</pubDate>
		<dc:creator>Mark Wilson</dc:creator>
				<category><![CDATA[gear]]></category>
		<category><![CDATA[802.11N]]></category>
		<category><![CDATA[Infinitec]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[Media Extender]]></category>
		<category><![CDATA[Streaming]]></category>
		<category><![CDATA[USB]]></category>
		<category><![CDATA[Wi-Fi]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/a62730246bc27477</guid>
		<description><![CDATA[<p><a rel="lytebox" href="http://cache.gawkerassets.com/assets/images/4/2010/02/infinitec-ium-game-consoles1.jpg"><img src="http://cache.gawkerassets.com/assets/images/4/2010/02/500x_infinitec-ium-game-consoles1.jpg" width="500"/></a>I don&#39;t know how to best sum up Infinitec&#39;s new &#34;flash drive&#34; in a headlineâ€”which is obvious at this point. But what it can do is pretty unique, once you wrap your head around it.</p>
<p>Infinitec has created a USB stick that contains an 802.11n module capable of creating an ad hoc network through any device&#8217;s USB port. But on the receiving end, it appears as nothing more complicated than a flash drive.</p>
<p>In other words, you can stream media to devices that aren&#8217;t necessarily so thrilled with you streaming media. Placed in a DVD player, for instance, you need not worry about the player&#8217;s supported network standards or your PC&#8217;s sharing settings. Just set the Infinitec stick to anywhere from 1GB to 1TB+ (depending on how much storage you expect your player to support), then load MPEG4s right from the stick&#8230;streamed from your PC loaded with accompanying software.</p>
<p>I could see several uses for Infinitec&#39;s little deviceâ€”namely, adding a <a title="Click here to read more posts tagged #mediaextender" href="http://gizmodo.com/tag/mediaextender/">media extender</a> to any room that has a TV with a USB port. That is, if the price is right whenever it eventually comes out. [<a href="http://www.engadget.com/2010/02/18/infinitec-details-infinite-usb-memory-device-functionality-ahead/">Engadget</a>]</p>
<p><br style="clear:both"/><br />
<br style="clear:both"/><br />
<a href="http://ads.pheedo.com/click.phdo?s=d70bb403a9a91d5b5c11c012eefcb025&#38;p=1"><img alt="" style="border:0" border="0" src="http://ads.pheedo.com/img.phdo?s=d70bb403a9a91d5b5c11c012eefcb025&#38;p=1"/></a><br />
<img alt="" height="0" width="0" border="0" src="http://a.rfihub.com/eus.gif?eui=2226"/>
<div>
<a href="http://feeds.gawker.com/~ff/gizmodo/full?a=S-fajypQ0sY:jKQmIvBAZGQ:H0mrP-F8Qgo"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=H0mrP-F8Qgo" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=S-fajypQ0sY:jKQmIvBAZGQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=S-fajypQ0sY:jKQmIvBAZGQ:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=S-fajypQ0sY:jKQmIvBAZGQ:D7DqB2pKExk" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=S-fajypQ0sY:jKQmIvBAZGQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=S-fajypQ0sY:jKQmIvBAZGQ:V_sGLiPBpWU" border="0"/></a>
</div>
<p><img src="http://feeds.feedburner.com/~r/gizmodo/full/~4/S-fajypQ0sY" height="1" width="1"/></p>
]]></description>
			<content:encoded><![CDATA[<p><a rel="lytebox" href="http://cache.gawkerassets.com/assets/images/4/2010/02/infinitec-ium-game-consoles1.jpg"><img src="http://cache.gawkerassets.com/assets/images/4/2010/02/500x_infinitec-ium-game-consoles1.jpg" width="500"/></a>I don&#39;t know how to best sum up Infinitec&#39;s new &quot;flash drive&quot; in a headlineâ€”which is obvious at this point. But what it can do is pretty unique, once you wrap your head around it.</p>
<p>Infinitec has created a USB stick that contains an 802.11n module capable of creating an ad hoc network through any device&#8217;s USB port. But on the receiving end, it appears as nothing more complicated than a flash drive.</p>
<p>In other words, you can stream media to devices that aren&#8217;t necessarily so thrilled with you streaming media. Placed in a DVD player, for instance, you need not worry about the player&#8217;s supported network standards or your PC&#8217;s sharing settings. Just set the Infinitec stick to anywhere from 1GB to 1TB+ (depending on how much storage you expect your player to support), then load MPEG4s right from the stick&#8230;streamed from your PC loaded with accompanying software.</p>
<p>I could see several uses for Infinitec&#39;s little deviceâ€”namely, adding a <a title="Click here to read more posts tagged #mediaextender" href="http://gizmodo.com/tag/mediaextender/">media extender</a> to any room that has a TV with a USB port. That is, if the price is right whenever it eventually comes out. [<a href="http://www.engadget.com/2010/02/18/infinitec-details-infinite-usb-memory-device-functionality-ahead/">Engadget</a>]</p>
<p><br style="clear:both"/><br />
<br style="clear:both"/><br />
<a href="http://ads.pheedo.com/click.phdo?s=d70bb403a9a91d5b5c11c012eefcb025&amp;p=1"><img alt="" style="border:0" border="0" src="http://ads.pheedo.com/img.phdo?s=d70bb403a9a91d5b5c11c012eefcb025&amp;p=1"/></a><br />
<img alt="" height="0" width="0" border="0" src="http://a.rfihub.com/eus.gif?eui=2226"/>
<div>
<a href="http://feeds.gawker.com/~ff/gizmodo/full?a=S-fajypQ0sY:jKQmIvBAZGQ:H0mrP-F8Qgo"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=H0mrP-F8Qgo" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=S-fajypQ0sY:jKQmIvBAZGQ:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?d=yIl2AUoC8zA" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=S-fajypQ0sY:jKQmIvBAZGQ:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=S-fajypQ0sY:jKQmIvBAZGQ:D7DqB2pKExk" border="0"/></a> <a href="http://feeds.gawker.com/~ff/gizmodo/full?a=S-fajypQ0sY:jKQmIvBAZGQ:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/gizmodo/full?i=S-fajypQ0sY:jKQmIvBAZGQ:V_sGLiPBpWU" border="0"/></a>
</div>
<p><img src="http://feeds.feedburner.com/~r/gizmodo/full/~4/S-fajypQ0sY" height="1" width="1"/></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2010/02/18/infinitec-unlimited-storage-streaming-flash-drive-usb/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Chromakey is everywhere</title>
		<link>http://www.glennmarcus.com/blog/2010/02/18/chromakey-is-everywhere/</link>
		<comments>http://www.glennmarcus.com/blog/2010/02/18/chromakey-is-everywhere/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 15:54:16 +0000</pubDate>
		<dc:creator>Cory Doctorow</dc:creator>
				<category><![CDATA[amazing]]></category>
		<category><![CDATA[effects]]></category>
		<category><![CDATA[Entertainment]]></category>
		<category><![CDATA[Movies]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[user/12651333281871808648/label/amazing]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/read]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/ef70821637a4c15c</guid>
		<description><![CDATA[<p></p>
<p>
Alan sez, &#8220;A great, but slightly disturbing, look at how pervasive green-screening has become in simply every scene in television these days.  Pretty much everything you think is outdoors is faked, at least to some degree.  I particularly like the faked ferry fire&#8230;&#8221;
</p>
<p>
<a href="http://www.youtube.com/watch?v=clnozSXyF4k&#38;feature=player_embedded">Stargate Studios Virtual Backlot Reel 2009</a></p>
<p>(<i>Thanks, <a href="http://copyfight.corante.com/">Alan</a>!</i>)</p>
<div>
<em>Previously:</em>
<ul>
<li><a href="http://www.boingboing.net/2002/12/01/dahling-you-look-mah.html#previouspost">Dahling, you look mahvelous&#8230; in chromakey &#8211; Boing Boing</a></li>
<li><a href="http://www.boingboing.net/2009/12/08/we-got-that-b-roll.html#previouspost">We got that b-roll Boing Boing</a></li>
<li><a href="http://www.boingboing.net/2008/03/25/is-fred-and-sharons.html#previouspost">Is Fred and Sharon&#39;s movie production business real or performance &#8230;</a></li>
<li><a href="http://www.boingboing.net/2009/04/24/handmade-effect-heav.html#previouspost">Handmade, effect-heavy feature film &#8211; Boing Boing</a></li>
<li><a href="http://www.boingboing.net/2008/04/29/get-involved-in-prod.html#previouspost">Get involved in production of community-made SF movie: Artemis &#8230;</a></li>
<li><a href="http://www.boingboing.net/2006/12/11/dv_rebels_guide.html#previouspost">Boing Boing: DV Rebel&#39;s Guide</a></li>
<li><a href="http://www.boingboing.net/2008/12/10/lotrnarniainspired-m.html#previouspost">LOTR/Narnia-inspired music video &#8211; Boing Boing</a></li>
<li><a href="http://www.boingboing.net/2010/02/12/raptor-devours-cheer.html%3Futm_source%3Dfeedburner%26utm_medium%3Dfeed%26utm_campaign%3DFeed%253A%2Bboingboing%252FiBag%2B(Boing%2BBoing)#previouspost">Raptor devours cheerleader Boing Boing</a></li>
</ul>
</div>
<p><br style="clear:both"/><br />
<br style="clear:both"/><br />
<a href="http://ads.pheedo.com/click.phdo?s=348c86c49633be261189402aaf324407&#38;p=1"><img alt="" style="border:0" border="0" src="http://ads.pheedo.com/img.phdo?s=348c86c49633be261189402aaf324407&#38;p=1"/></a><br />
<img alt="" height="0" width="0" border="0" src="http://a.rfihub.com/eus.gif?eui=2226"/><img src="http://feeds.feedburner.com/~r/boingboing/iBag/~4/y7mIeFK8hZc" height="1" width="1"/></p>
]]></description>
			<content:encoded><![CDATA[<p><embed src="http://www.youtube-nocookie.com/v/clnozSXyF4k&amp;hl=en_US&amp;fs=1&amp;" allowScriptAccess="never" allowFullScreen="true" width="640" height="385" wmode="transparent" type="application/x-shockwave-flash"></embed></p>
<p>
Alan sez, &#8220;A great, but slightly disturbing, look at how pervasive green-screening has become in simply every scene in television these days.  Pretty much everything you think is outdoors is faked, at least to some degree.  I particularly like the faked ferry fire&#8230;&#8221;
</p>
<p>
<a href="http://www.youtube.com/watch?v=clnozSXyF4k&amp;feature=player_embedded">Stargate Studios Virtual Backlot Reel 2009</a></p>
<p>(<i>Thanks, <a href="http://copyfight.corante.com/">Alan</a>!</i>)</p>
<div>
<em>Previously:</em>
<ul>
<li><a href="http://www.boingboing.net/2002/12/01/dahling-you-look-mah.html#previouspost">Dahling, you look mahvelous&#8230; in chromakey &#8211; Boing Boing</a></li>
<li><a href="http://www.boingboing.net/2009/12/08/we-got-that-b-roll.html#previouspost">We got that b-roll Boing Boing</a></li>
<li><a href="http://www.boingboing.net/2008/03/25/is-fred-and-sharons.html#previouspost">Is Fred and Sharon&#39;s movie production business real or performance &#8230;</a></li>
<li><a href="http://www.boingboing.net/2009/04/24/handmade-effect-heav.html#previouspost">Handmade, effect-heavy feature film &#8211; Boing Boing</a></li>
<li><a href="http://www.boingboing.net/2008/04/29/get-involved-in-prod.html#previouspost">Get involved in production of community-made SF movie: Artemis &#8230;</a></li>
<li><a href="http://www.boingboing.net/2006/12/11/dv_rebels_guide.html#previouspost">Boing Boing: DV Rebel&#39;s Guide</a></li>
<li><a href="http://www.boingboing.net/2008/12/10/lotrnarniainspired-m.html#previouspost">LOTR/Narnia-inspired music video &#8211; Boing Boing</a></li>
<li><a href="http://www.boingboing.net/2010/02/12/raptor-devours-cheer.html%3Futm_source%3Dfeedburner%26utm_medium%3Dfeed%26utm_campaign%3DFeed%253A%2Bboingboing%252FiBag%2B(Boing%2BBoing)#previouspost">Raptor devours cheerleader Boing Boing</a></li>
</ul>
</div>
<p><br style="clear:both"/><br />
<br style="clear:both"/><br />
<a href="http://ads.pheedo.com/click.phdo?s=348c86c49633be261189402aaf324407&amp;p=1"><img alt="" style="border:0" border="0" src="http://ads.pheedo.com/img.phdo?s=348c86c49633be261189402aaf324407&amp;p=1"/></a><br />
<img alt="" height="0" width="0" border="0" src="http://a.rfihub.com/eus.gif?eui=2226"/><img src="http://feeds.feedburner.com/~r/boingboing/iBag/~4/y7mIeFK8hZc" height="1" width="1"/></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2010/02/18/chromakey-is-everywhere/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)</title>
		<link>http://www.glennmarcus.com/blog/2010/02/18/50-useful-coding-techniques-css-layouts-visual-effects-and-forms/</link>
		<comments>http://www.glennmarcus.com/blog/2010/02/18/50-useful-coding-techniques-css-layouts-visual-effects-and-forms/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 11:25:44 +0000</pubDate>
		<dc:creator>Smashing Editorial</dc:creator>
				<category><![CDATA[web20]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[user/12651333281871808648/label/ui]]></category>
		<category><![CDATA[user/12651333281871808648/label/web20]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/read]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/tracking-body-link-used]]></category>
		<category><![CDATA[user/12651333281871808648/state/com.google/tracking-kept-unread]]></category>

		<guid isPermaLink="false">tag:google.com,2005:reader/item/807cc2c15c8bf6b4</guid>
		<description><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"> <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)" border="0"/><br /> <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></div>
</td>
</tr>
</table>
<p>Although CSS is generally considered a simple and straightforward language, sometimes it requires creativity, skill and a bit of experimentation. The good news is that designers and developers worldwide often face similar problems and choose to share their insights and workarounds with the wider community.</p>
<p>This is where we come in. We are always looking to collect such articles for our posts so that we can deliver the most useful and relevant content to our readers. In this post, we present an overview of <strong>useful CSS/jQuery coding tips, tricks and techniques</strong> for visual effects, layouts and web form design to help you find solutions to the problems you are dealing with or will have to deal with in future.</p>
<p>You may want to look at similar CSS-related posts that we published last months:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2010/01/12/45-powerful-css-javascript-techniques/">45 Powerful CSS and JavaScript Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2010/02/01/50-brilliant-css3-javascript-coding-techniques/">50 Brilliant CSS3/JavaScript Coding Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2009/11/23/6-useful-coding-solutions-for-designers-and-developers/">5 Useful Coding Solutions For Designers And Developers</a></li>
</ul>
<p>[Offtopic: By the way, did you know that Smashing Magazine has a <a href="http://creatives.commindo-media.de/www/delivery/ck.php?oaparams=2__bannerid=1249__zoneid=0__cb=be1da96c6d__oadest=http%3A%2F%2Fm.smashingmagazine.com">mobile version</a>? Try it out if you have an iPhone, Blackberry or another capable device.]</p>
<h3>CSS Layouts: Techniques And Workarounds</h3>
<p><a href="http://www.sohtanaka.com/web-design/facebook-style-footer-admin-panel-part-1/">Facebook Style Footer Admin Panel</a><br />Learn how to re-create the Facebook footer admin panel with CSS and jQuery. Also check out <a href="http://www.sohtanaka.com/web-design/facebook-style-footer-admin-panel-part-2/">part 2</a>.</p>
<p><a href="http://www.sohtanaka.com/web-design/facebook-style-footer-admin-panel-part-1/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-15.jpg" width="480" height="300" alt="Css-technique-15 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.jankoatwarpspeed.com/post/2009/07/07/Adaptable-view.aspx">Adaptable View: How Do They Do It?</a><br />This tutorial explains how to manually change a layout, and it shows two great examples and â€œhow they did it.â€</p>
<p><a href="http://www.jankoatwarpspeed.com/post/2009/07/07/Adaptable-view.aspx"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-01.jpg" width="480" height="300" alt="Css-technique-01 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://designm.ag/tutorials/jquery-display-switch/">Easy Display Switch with CSS and jQuery</a><br />A quick and simple way to enable users to switch page layouts using CSS and jQuery.</p>
<p><a href="http://designm.ag/tutorials/jquery-display-switch/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-198.jpg" width="480" height="300" alt="Css-198 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://buildinternet.com/2009/07/quick-tip-resizing-images-based-on-browser-window-size/">Quick Tip â€“ Resizing Images Based On Browser&#8230;</a></p>]]></description>
			<content:encoded><![CDATA[<table width="650">
<tr>
<td width="650">
<div style="width:650px"> <img src="http://creatives.commindo-media.de/static/smashing-magazine-advertisement.gif" alt="Smashing-magazine-advertisement in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)" border="0"/><br /> <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=56"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=56" border="0" alt=" in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=63"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=63" border="0" alt=" in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a>Â <a href="http://creatives.commindo-media.de/www/delivery/ck.php?zoneid=64"><img src="http://creatives.commindo-media.de/www/delivery/avw.php?zoneid=64" border="0" alt=" in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></div>
</td>
</tr>
</table>
<p>Although CSS is generally considered a simple and straightforward language, sometimes it requires creativity, skill and a bit of experimentation. The good news is that designers and developers worldwide often face similar problems and choose to share their insights and workarounds with the wider community.</p>
<p>This is where we come in. We are always looking to collect such articles for our posts so that we can deliver the most useful and relevant content to our readers. In this post, we present an overview of <strong>useful CSS/jQuery coding tips, tricks and techniques</strong> for visual effects, layouts and web form design to help you find solutions to the problems you are dealing with or will have to deal with in future.</p>
<p>You may want to look at similar CSS-related posts that we published last months:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2010/01/12/45-powerful-css-javascript-techniques/">45 Powerful CSS and JavaScript Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2010/02/01/50-brilliant-css3-javascript-coding-techniques/">50 Brilliant CSS3/JavaScript Coding Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2009/11/23/6-useful-coding-solutions-for-designers-and-developers/">5 Useful Coding Solutions For Designers And Developers</a></li>
</ul>
<p>[Offtopic: By the way, did you know that Smashing Magazine has a <a href="http://creatives.commindo-media.de/www/delivery/ck.php?oaparams=2__bannerid=1249__zoneid=0__cb=be1da96c6d__oadest=http%3A%2F%2Fm.smashingmagazine.com">mobile version</a>? Try it out if you have an iPhone, Blackberry or another capable device.]</p>
<h3>CSS Layouts: Techniques And Workarounds</h3>
<p><a href="http://www.sohtanaka.com/web-design/facebook-style-footer-admin-panel-part-1/">Facebook Style Footer Admin Panel</a><br />Learn how to re-create the Facebook footer admin panel with CSS and jQuery. Also check out <a href="http://www.sohtanaka.com/web-design/facebook-style-footer-admin-panel-part-2/">part 2</a>.</p>
<p><a href="http://www.sohtanaka.com/web-design/facebook-style-footer-admin-panel-part-1/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-15.jpg" width="480" height="300" alt="Css-technique-15 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.jankoatwarpspeed.com/post/2009/07/07/Adaptable-view.aspx">Adaptable View: How Do They Do It?</a><br />This tutorial explains how to manually change a layout, and it shows two great examples and â€œhow they did it.â€</p>
<p><a href="http://www.jankoatwarpspeed.com/post/2009/07/07/Adaptable-view.aspx"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-01.jpg" width="480" height="300" alt="Css-technique-01 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://designm.ag/tutorials/jquery-display-switch/">Easy Display Switch with CSS and jQuery</a><br />A quick and simple way to enable users to switch page layouts using CSS and jQuery.</p>
<p><a href="http://designm.ag/tutorials/jquery-display-switch/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-198.jpg" width="480" height="300" alt="Css-198 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://buildinternet.com/2009/07/quick-tip-resizing-images-based-on-browser-window-size/">Quick Tip â€“ Resizing Images Based On Browser Window Size</a><br />In fluid layouts, formatting text to adjust smoothly to window size is easy, but images are not as fluid-friendly. This quick tip shows how to switch between two image sizes based on the size of the browser, the DIV or whatever else you choose.</p>
<p><a href="http://buildinternet.com/2009/07/quick-tip-resizing-images-based-on-browser-window-size/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-064.jpg" width="480" height="300" alt="Css-064 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://css-tricks.com/one-page-resume-site/">One Page RÃ©sumÃ© Site</a><br />A clean layout on one pageâ€”literally (just one <em>index.html</em> file with optional images). It comes with contact information in microformats and a main area for the resume using a definition list (<code>dl</code>). And it prints well.</p>
<p><a href="http://css-tricks.com/one-page-resume-site/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-000.jpg" width="480" height="300" alt="Css-000 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://ajaxian.com/archives/pegs-automate-display-fixed">Pegs: Automate Display: fixed++</a><br />Chris Wetherell posts on Pegs, a strategy for having one scroll bar but independent scrolling areas. After the first one, click on the other items to flip between sizes. You will see that an areaâ€™s scroll depends on the configuration.</p>
<p><a href="http://ajaxian.com/archives/pegs-automate-display-fixed"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-135.jpg" width="480" height="300" alt="Css-135 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.tutwow.com/tips/quick-tip-css-100-height/">CSS 100% Height</a><br />A common problem among designers is how to get a div to stretch 100% of the windowâ€™s height. There are a few different techniques out there, and this tutorial shows one of them.</p>
<p><a href="http://www.tutwow.com/tips/quick-tip-css-100-height/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-18.jpg" width="480" height="300" alt="Css-technique-18 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.webdesignerwall.com/demo/css3-dropdown-menu//">CSS3 Drop-Down Menu</a><br />A clean, simple a nice navigation menu, designed by Nick La.</p>
<p><a href="http://www.webdesignerwall.com/demo/css3-dropdown-menu/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-21.jpg" width="480" height="211" alt="Css-technique-21 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.fivefingercoding.com/xhtml-and-css/scrolling-transparent-background-effect">CSS Trick for a Scrolling Transparent Background Effect</a><br />Scroll the page to watch a battle between good and evil take shape. The effect requires two images: one transparent and one tiled gradient image. The gradient scrolls under the transparent PNG. Because it matches the colors in the PNG, each set of images disappears, depending on the part of the gradient theyâ€™re on top of.</p>
<p><a href="http://www.fivefingercoding.com/xhtml-and-css/scrolling-transparent-background-effect"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-148.jpg" width="480" height="300" alt="Css-148 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://unstoppablerobotninja.com/entry/fluid-images/">Fluid Images</a><br />By default, an image element that is 500 pixels doesnâ€™t exactly play nice with a container as large as 800 pixels or one as small as 100. Whatâ€™s a designer to do?</p>
<p><a href="http://unstoppablerobotninja.com/entry/fluid-images/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-069.jpg" width="480" height="300" alt="Css-069 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://css-tricks.com/scrollfollow-sidebar/">Scroll/Follow Sidebar, Multiple Techniques</a><br />A really simple concept: the sidebar follows you as you scroll down the page. There are a number of ways to go about it. Two are covered here: CSS and JavaScript (jQuery), with a bonus CSS trick.</p>
<p><a href="http://css-tricks.com/scrollfollow-sidebar/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-00.jpg" width="480" height="300" alt="Css-technique-00 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://blog.themeforest.net/tutorials/vertical-centering-with-css/">Vertical Centering With CSS</a><br />There are a few different ways to vertically center objects using CSS, but choosing the right one can be difficult. Here is a list of the best ways and an explanation of how to create a nice centered website.</p>
<p><a href="http://blog.themeforest.net/tutorials/vertical-centering-with-css/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css3-new-08.jpg" width="480" height="300" alt="Css3-new-08 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.jankoatwarpspeed.com/post/2009/11/08/YouTube-adaptable-view-css-jquery.aspx">Create YouTube-like adaptable view using CSS and jQuery</a><br />Other than the â€œTurn off the lightsâ€ feature, YouTube has great stuff, such as the â€œchange viewâ€ feature, which allows you to switch between normal and wide mode, thus expanding or shrinking the video area. Creating this is very simple.</p>
<p><a href="http://www.jankoatwarpspeed.com/post/2009/11/08/YouTube-adaptable-view-css-jquery.aspx"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-142.jpg" width="480" height="300" alt="Css-142 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://css-tricks.com/how-to-create-a-horizontally-scrolling-site/">How To Create a Horizontally Scrolling Site</a><br />If websites were made of wood, the grain would run up and down. Vertical is the natural flow of the Web. But browsers are equipped with vertical <em>and</em> horizontal scroll bars, right? We have the choice to go against the grain and create web pages that scroll primarily horizontally and that even expand horizontally to accommodate more content. Perhaps a slight blow to usability, but a cool creative touch nonetheless!</p>
<p><a href="http://css-tricks.com/how-to-create-a-horizontally-scrolling-site/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-02.jpg" width="480" height="300" alt="Css-technique-02 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://buildinternet.com/2009/10/purely-css-faking-minimum-margins/">Purely CSS â€“ Faking Minimum Margins</a><br /><code>min-margin</code> is non-existent in the CSS world. After youâ€™ve pondered and Googled it, check out the solution here.</p>
<p><a href="http://buildinternet.com/2009/10/purely-css-faking-minimum-margins/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-03.jpg" width="480" height="300" alt="Css-technique-03 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://line25.com/articles/create-sidebars-of-equal-height-with-faux-columns">Create Sidebars of Equal Height with Faux Columns</a><br />CSS can be tricky business. Creating columns of equal height, where the content in one column is longer than the content in another, is frustrating. Hereâ€™s where the faux-column technique can help. Find out how this solution makes even the most complicated layout a breeze to code.</p>
<p><a href="http://www.filamentgroup.com/lab/setting_equal_heights_with_jquery/">Setting Equal Heights with jQuery</a><br />Here is a script to match the heights of boxes in the same container and create a tidy grid, with little overhead.</p>
<p><a href="http://www.filamentgroup.com/lab/setting_equal_heights_with_jquery/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-141.jpg" width="480" height="300" alt="Css-141 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://blog.sugarenia.com/archives/web-design/quick-tip-centered-fake-floats">Quick Tip: Centered Fake Floats</a><br />There were ways to center-align left-floated elements, but then <code>inline-block</code> became popular and everything changed. After a bit of tinkering, Zaharenia Atzitzikaki found an efficient and (mostly) cross-browser-compatible way to center elements without floats.</p>
<p><a href="http://www.webresourcesdepot.com/6-flexible-jquery-plugins-to-control-webpage-layouts-easily/">6 Flexible jQuery Plugins to Control Web Page Layouts Easily</a><br />A collection of six jQuery plug-ins to manage page layouts easily.</p>
<p><a href="http://www.webresourcesdepot.com/6-flexible-jquery-plugins-to-control-webpage-layouts-easily/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-125.jpg" width="480" height="300" alt="Css-125 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://buildinternet.com/2009/07/four-methods-to-create-equal-height-columns/">Four Methods to Create Equal-Height Columns</a><br />This article discusses ways to create equal-height columns that work in all major browsers (including IE6). All of the methods show how to create a three-column layout.</p>
<p><a href="http://buildinternet.com/2009/07/four-methods-to-create-equal-height-columns/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-065.jpg" width="480" height="300" alt="Css-065 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.webdesignerwall.com/tutorials/how-to-css-large-background/">How to: CSS Large Background</a><br />A tutorial with various CSS examples for how to create a large background using either a single image or double images.</p>
<p><a href="http://www.webdesignerwall.com/tutorials/how-to-css-large-background/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-080.jpg" width="480" height="300" alt="Css-080 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://five.gregorywood.co.uk/index.php?/blog/article/a-nice-little-css-positioning-technique">A Nice Little CSS Positioning Technique</a><br />Here, we have a basic unordered list (<code>ul</code>), with left-floated images where the text doesnâ€™t wrap under the images. Of course, this technique could be deployed in loads of other instances.</p>
<p><a href="http://five.gregorywood.co.uk/index.php?/blog/article/a-nice-little-css-positioning-technique"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-117.jpg" width="480" height="300" alt="Css-117 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://css-tricks.com/perfect-full-page-background-image/">Perfect Full Page Background Image</a><br />This technique allows an image to fill the page, with no white space. The image scales as needed and retains its proportions, without triggering scroll bars.</p>
<p><a href="http://css-tricks.com/perfect-full-page-background-image/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-162.jpg" width="480" height="300" alt="Css-162 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.sohtanaka.com/web-design/smart-columns-w-css-jquery/">Smart Columns With CSS and jQuery</a><br />In observing liquid-width websites, Soh Tanaka sees two common techniques for displaying columns: fixed columns and liquid columns. He points out the drawbacks of both and pitches his solution.</p>
<p><a href="http://www.sohtanaka.com/web-design/smart-columns-w-css-jquery/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-057.jpg" width="480" height="300" alt="Css-057 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<h3>Images And Visual Effects With CSS</h3>
<p><a href="http://tutorialzine.com/2009/11/beautiful-apple-gallery-slideshow/">A Beautiful Apple-Style Slideshow Gallery With CSS and jQuery</a><br />Create an Apple-like slideshow gallery, similar to the one used on Appleâ€™s website to showcase products. It works entirely in the front end; no PHP or databases required.</p>
<p><a href="http://tutorialzine.com/2009/11/beautiful-apple-gallery-slideshow/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-12.jpg" width="480" height="300" alt="Css-technique-12 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.romancortes.com/blog/pure-css-coke-can/">Rolling a coke can around with pure CSS</a><br />RomÃ¡n CortÃ©s is having a lot of fun doing CSS tricks these days. He just built a rolling coke can that uses <code>background-attachment</code>, <code>background-position</code> and a few other tricks to achieve the effect. No fancy CSS3 needed here!</p>
<p><a href="http://www.romancortes.com/blog/pure-css-coke-can/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css3-new-10.jpg" width="480" height="300" alt="Css3-new-10 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.sohtanaka.com/web-design/greyscale-hover-effect-w-css-jquery/">Grayscale Hover Effect With CSS and jQuery</a><br />A few months ago, James Padolsey introduced a cool grayscale technique for non-IE browsers. His technique inspired Soh Tanaka to come up with a workaround with a similar effect. His solution relies on CSS Sprites and a few lines of jQuery, but it requires a bit of preparation before implementation. It is not recommended for large-scale projects; it is probably best for portfolio pieces.</p>
<p><a href="http://www.sohtanaka.com/web-design/greyscale-hover-effect-w-css-jquery/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-055.jpg" width="480" height="300" alt="Css-055 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://labs.dragoninteractive.com/rainbows.php">Codename Rainbows</a><br />Some JavaScript and CSS magic is used here to apply a two-color gradient to text. Shadows and highlights can also be applied. This works especially well on big websites and for dynamic content where creating images for every instance would be impractical.</p>
<p><a href="http://labs.dragoninteractive.com/rainbows.php"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-097.jpg" width="480" height="300" alt="Css-097 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://cssglobe.com/post/6089/3-easy-and-fast-css-techniques-for-faux-image">3 Easy and Fast CSS Techniques for Faux Image Cropping</a><br />This article summarizes three fast and easy CSS techniques for displaying only a portion of an image. All of the techniques need only a couple of lines of CSS. You are not literally cropping, which is why itâ€™s called faux image cropping. These techniques can be helpful if you want to keep images to a certain size (for example, thumbnails in a news section). Being able to use CSS to control which portion of an image to display is great.</p>
<p><a href="http://cssglobe.com/post/6089/3-easy-and-fast-css-techniques-for-faux-image"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-08.jpg" width="480" height="300" alt="Css-technique-08 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://css-tricks.com/image-rollover-borders-that-do-not-change-layout/">Image Rollover Borders That Do Not Change Layout</a><br />With CSS, the border of any block-level element is factored into the elementâ€™s size in the layout. So, if you add a border to an element on hover, the layout will shift. In this post, you will find how to use the regular border property and create inner borders to get around that.</p>
<p><a href="http://css-tricks.com/image-rollover-borders-that-do-not-change-layout/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-10.jpg" width="480" height="270" alt="Css-technique-10 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.christinafowler.com/tutorial/horizontal-stripes">Horizontal Stripes</a><br />This tutorial shows you how to create never ending horizontal stripes in your web design using CSS.</p>
<p><a href="http://www.christinafowler.com/tutorial/horizontal-stripes"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-14.jpg" width="480" height="300" alt="Css-technique-14 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://css-tricks.com/css-image-replacement/">Nine Techniques for CSS Image Replacement</a><br />Put nine different techniques of image replacement to the test.</p>
<p><a href="http://css-tricks.com/css-image-replacement/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-13.jpg" width="480" height="300" alt="Css-technique-13 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.marcofolio.net/webdesign/pure_css3_bokeh_effect_with_some_jquery_help.html">Bokeh effects with CSS3 and jQuery</a><br />This tutorial teaches you how to re-create the bokeh effect with CSS 3. With some help from jQuery, we can add some randomness in colour, size and position for the effect.</p>
<p><a href="http://www.marcofolio.net/webdesign/pure_css3_bokeh_effect_with_some_jquery_help.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-16.jpg" width="480" height="262" alt="Css-technique-16 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.impressivewebs.com/stationary-logo-changes-page-scroll-css/">A Stationary Logo That Changes on Page Scroll with CSS </a><br />Here is an interesting effect that modifies the logo when the page is scrolled, using the CSS <code>background-attachment</code> property.</p>
<p><a href="http://www.impressivewebs.com/stationary-logo-changes-page-scroll-css/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css3-new-04.jpg" width="480" height="300" alt="Css3-new-04 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://css-tricks.com/silhouette-fadeins/">Silhouette Fade-Ins</a><br />To achieve the effect in the image above, first we need a DIV with the silhouettes as a background image. Then we put four images in that DIV, all the exact same size, with each band member highlighted. These images are hidden by default. Then you absolutely position four regions on top of the DIV; these are the roll-over link areas. With jQuery, we apply hover events to them, fading in the appropriate image.</p>
<p><a href="http://css-tricks.com/silhouette-fadeins/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-046.jpg" width="480" height="300" alt="Css-046 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.dinnermint.org/css/creating-triangles-in-css/">Creating Triangles in CSS </a><br />Few people realize that a browser draws borders at angles. This technique takes advantage of that. One side of the border is given the color of the arrow, and the rest are transparent. Then you give the border a large width; the ones above are 20 pixels.</p>
<p><a href="http://www.dinnermint.org/css/creating-triangles-in-css/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-004.jpg" width="480" height="300" alt="Css-004 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.marcofolio.net/css/a_parallax_illusion_with_css_the_horse_in_motion.html">A parallax optical illusion with CSS: The Horse in Motion</a><br />Time for some fun with CSS and optical illusions.</p>
<p><a href="http://www.marcofolio.net/css/a_parallax_illusion_with_css_the_horse_in_motion.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-203.jpg" width="480" height="300" alt="Css-203 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://cssglobe.com/post/4175/pure-css-line-graph">Pure CSS Line Graph</a><br />The idea here is not only to offer data visualization to people who arenâ€™t comfortable using scripting languages, but to demonstrate the power of CSS and offer a different way of using CSS. If you are not a fan of line graphs and data visualization, you may still benefit from this article. Think of it as a CSS experiment, and learn a thing or two about CSS Sprites and positioning.</p>
<p><a href="http://cssglobe.com/post/4175/pure-css-line-graph"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-037.jpg" width="480" height="300" alt="Css-037 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.9lessons.info/2009/10/zooming-with-jquery-and-css.html">Zooming with jQuery and CSS</a><br />This post is about text zooming with jQuery and CSS. This is a basic-level tutorial about changing a style using a jQuery script. A simple way to zoom website content.</p>
<p><a href="http://www.9lessons.info/2009/10/zooming-with-jquery-and-css.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-146.jpg" width="480" height="300" alt="Css-146 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://cssglobe.com/post/1305/create-resizing-thumbnails-using-overflow-property">Create Resizing Thumbnails Using Overflow Property</a><br />This tutorial teaches you how to control thumbnail sizes. Sometimes we donâ€™t have enough space to fit large thumbnails, and yet we would rather avoid small indecipherable images. Using this trick, we can limit the default dimensions of thumbnails and show them at full size when the user mouses over them.</p>
<p><a href="http://cssglobe.com/post/1305/create-resizing-thumbnails-using-overflow-property"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-150.jpg" width="480" height="300" alt="Css-150 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://nick-dunn.co.uk/article/cross-browser-drop-shadows-using-pure-css/">Cross-browser drop shadows using pure CSS</a><br />Most methods of adding drop-shadows to content blocks require additional HTML mark-up and one or more PNG images. But by combining the Glow and Shadow filters, something that fairly closely resembles the rendered CSS3 shadow can be achieved.</p>
<p><a href="http://nick-dunn.co.uk/article/cross-browser-drop-shadows-using-pure-css/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-151.jpg" width="480" height="300" alt="Css-151 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://css-tricks.com/date-badges-and-comment-bubbles-for-your-blog/">Date Badges and Comment Bubbles for Your Blog</a><br />One of the things you have to deal with when your blog grows is having to cram more info into less space to show everything you want to show. One thing you can do is add an icon for the date and then a bubble over it with the number of comments for that post.</p>
<p><a href="http://css-tricks.com/date-badges-and-comment-bubbles-for-your-blog/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-11.jpg" width="480" height="300" alt="Css-technique-11 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<h3>CSS Tables And Web Forms</h3>
<p><a href="http://cssglobe.com/post/6984/ux-trick-display-form-data-as-tabular-data">UX trick: display form data as tabular data</a><br />This is a little trick to enhance the user experience of forms. It displays editable form data as readable tabular data.</p>
<p><a href="http://cssglobe.com/post/6984/ux-trick-display-form-data-as-tabular-data"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-04.jpg" width="480" height="300" alt="Css-technique-04 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.zurb.com/article/206/tables-not-as-evil-as-you-think">Tables: Not As Evil As You Think</a><br />Tables are evil, right? Yes and no. For tabular data, theyâ€™re not, of course. Thatâ€™s what tables are for in the first place. CSS can do an excellent job of styling a properly formatted table, and the table structure provides good scaffolding for JavaScript calls. But what is addressed here is using tables for non-tabular data (i.e. for the layout). Yes, thatâ€™s right: using tables for layout.</p>
<p><a href="http://www.zurb.com/article/206/tables-not-as-evil-as-you-think"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-075.jpg" width="480" height="300" alt="Css-075 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://aext.net/2009/08/perfect-sign-in-dropdown-box-likes-twitter-with-jquery/">Perfect Drop-Down Log-In Box Like Twitter Using jQuery</a><br />This shows you how to create a Twitter-style drop-down log-in form using jQuery. Itâ€™s really easy, it saves space on the page and visitors feel comfortable with the awesome toggle form.</p>
<p><a href="http://aext.net/2009/08/perfect-sign-in-dropdown-box-likes-twitter-with-jquery/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-158.jpg" width="480" height="300" alt="Css-158 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://css-tricks.com/making-selects-printable/">Make a Selectâ€™s Options Printable</a><br />When printing a Web page with <code>select</code> elements on it, the select drop-down prints just as it looks on the Web. This of course is practically useless on the printed page. One option for handling this is to follow every <code>select</code> HTML element with an unordered list that duplicates the content. Hide the unordered list in your main CSS file and reveal it with your print style sheet. This is a reasonable approach, except that itâ€™s a big olâ€™ pain in the butt to deal with all the time. Letâ€™s rely on jQuery to do the heavy lifting instead.</p>
<p><a href="http://css-tricks.com/making-selects-printable/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-018.jpg" width="480" height="300" alt="Css-018 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.9lessons.info/2009/12/twitter-like-login-with-jquery-and-css.html">Twitter-Like Log-In With jQuery and CSS</a><br />This post explains how to get the Twitter-like hide and show effect for logging in using jQuery and CSS.â€ Very simple: just five lines of JavaScript for the <code>hide()</code> and <code>show()</code> events and a little CSS.</p>
<p><a href="http://www.9lessons.info/2009/12/twitter-like-login-with-jquery-and-css.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-145.jpg" width="480" height="300" alt="Css-145 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://woork.blogspot.com/2008/06/clean-and-pure-css-form-design.html">Clean and Pure CSS Form Design</a><br />This tutorial illustrates how to design a pure CSS form without using HTML tables.</p>
<p><a href="http://woork.blogspot.com/2008/06/clean-and-pure-css-form-design.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-105.jpg" width="480" height="300" alt="Css-105 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://cssglobe.com/post/6295/cssg-collection-free-comment-styles">CSSG Collection: Free Comment Styles</a><br />This is the second CSSG collection from CSS Globe.</p>
<p><a href="http://cssglobe.com/post/6295/cssg-collection-free-comment-styles"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-034.jpg" width="480" height="300" alt="Css-034 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://24ways.org/2009/have-a-field-day-with-html5-forms">Have a Field Day with HTML5 Forms</a><br />Here is a look at how to style a beautiful HTML5 form using some advanced CSS and the latest CSS3 techniques. You will definitely want to re-style your forms after having read this article.</p>
<p><a href="http://24ways.org/2009/have-a-field-day-with-html5-forms"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-011.jpg" width="480" height="300" alt="Css-011 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://css-tricks.com/editable-invoice-v2/">Editable/Printable Invoice</a><br />Create editable and printable invoices using CSS and some JavaScript. This is version 2 from Vinh Pham.</p>
<p><a href="http://css-tricks.com/editable-invoice-v2/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-047.jpg" width="480" height="300" alt="Css-047 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.zurb.com/article/279/how-to-mask-passwords-like-the-iphone">How to Mask Passwords Like the iPhone</a><br />Many smartphones, including the iPhone, show the last character that you typed in a password field with a delay of a second or two. You can see that last character but not the entire password. But browsers donâ€™t do what these mobile devices do. Here is a solution, with some fancy JavaScript and behind-the-scenes trickery.</p>
<p><a href="http://www.zurb.com/article/279/how-to-mask-passwords-like-the-iphone"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-074.jpg" width="480" height="300" alt="Css-074 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.zurb.com/article/195/make-web-forms-suck-less-with-labels">Make Web Forms Suck Less With Labels</a><br />Weâ€™ve been filling out Web forms for years, and we all gripe that they could be better. Even with generous padding, the fields are too small. But hardly anyone has improved the most under-rated interaction of them all: checkboxes and radio buttons.</p>
<p><a href="http://www.zurb.com/article/195/make-web-forms-suck-less-with-labels"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/css-technique-20.jpg" width="480" height="300" alt="Css-technique-20 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://lipidity.com/fancy-form/">FancyForm: JavaScript checkbox replacement</a><br />FancyForm is a powerful and flexible checkbox-replacement script that changes the appearance and function of HTML form elements. It is accessible and easy to use, and it degrades gracefully on older non-supported browsers.</p>
<p><a href="http://lipidity.com/fancy-form/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-103.jpg" width="480" height="300" alt="Css-103 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://widowmaker.kiev.ua/checkbox/">jQuery checkbox v.1.3.0 Beta 1</a><br />A lightweight custom-styled checkbox implementation for jQuery 1.2.x and 1.3.x.</p>
<p><a href="http://widowmaker.kiev.ua/checkbox/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-104.jpg" width="480" height="300" alt="Css-104 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://www.askthecssguy.com/2009/08/disabled_labels_and_the_trilem.html">Disabled labels and the Trilemma plug-in</a><br />The form above on the left makes use of the <code>disabled</code> attribute, but the default browser settings for <code>disabled</code> inputs donâ€™t contrast as much as one would like. To better distinguish at a glance between which inputs are disabled and enabled, the labels of disabled inputs in the form on the right are styled with a faint gray color.</p>
<p><a href="http://www.askthecssguy.com/2009/08/disabled_labels_and_the_trilem.html"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-127.jpg" width="480" height="300" alt="Css-127 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<p><a href="http://friedcellcollective.net/outbreak/2009/10/04/fluid-searchbox/">Fluid Search Box</a><br />Creating a fluid search box when you have only a single element next to it is trivial. What you should do is wrap the input in an element and use padding to create space for the fixed element; then position the fixed element absolutely (or relatively) in the space created by the padding.</p>
<h3>Last Click</h3>
<p><a href="http://stewdio.org/pong/">Browser Pong</a><br />A whole new pong game using three browser windows for the ball and racquets. Clever!</p>
<p><a href="http://stewdio.org/pong/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/01/css-180.jpg" width="480" height="300" alt="Css-180 in 50 Useful Coding Techniques (CSS Layouts, Visual Effects and Forms)"/></a></p>
<h3>Related posts</h3>
<p>You may want to look at similar CSS-related posts that we published last months:</p>
<ul>
<li><a href="http://www.smashingmagazine.com/2010/01/12/45-powerful-css-javascript-techniques/">45 Powerful CSS and JavaScript Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2010/02/01/50-brilliant-css3-javascript-coding-techniques/">50 Brilliant CSS3/JavaScript Coding Techniques</a></li>
<li><a href="http://www.smashingmagazine.com/2009/11/23/6-useful-coding-solutions-for-designers-and-developers/">5 Useful Coding Solutions For Designers And Developers</a></li>
</ul>
<p><em>(kk) (jb) (vf) (al)</em></p>
<hr />
<p><small>Â© Smashing Editorial for <a href="http://www.smashingmagazine.com">Smashing Magazine</a>, 2010. | <a href="http://www.smashingmagazine.com/2010/02/18/50-css-and-javascript-techniques-for-layouts-forms-and-visual-effects/">Permalink</a> | <a href="http://www.smashingmagazine.com/2010/02/18/50-css-and-javascript-techniques-for-layouts-forms-and-visual-effects/#comments">48 comments</a> | <a title="Bookmark in del.icio.us" href="http://del.icio.us/post?url=http://www.smashingmagazine.com/2010/02/18/50-css-and-javascript-techniques-for-layouts-forms-and-visual-effects/&amp;title=50%20Useful%20Coding%20Techniques%20(CSS%20Layouts,%20Visual%20Effects%20and%20Forms)">Add to del.icio.us</a> | <a title="Bookmark in Digg" href="http://digg.com/submit?phase=2&amp;url=http://www.smashingmagazine.com/2010/02/18/50-css-and-javascript-techniques-for-layouts-forms-and-visual-effects/">Digg this</a> | <a title="Stumble on StumbleUpon" href="http://www.stumbleupon.com/submit?url=http://www.smashingmagazine.com/2010/02/18/50-css-and-javascript-techniques-for-layouts-forms-and-visual-effects/">Stumble on StumbleUpon!</a> | <a title="Tweet us!" href="http://twitter.com/home?status=@tweetmeme%20@smashingmag%20Reading%20&#39;50%20Useful%20Coding%20Techniques%20(CSS%20Layouts,%20Visual%20Effects%20and%20Forms)&#39;%20http://www.smashingmagazine.com/2010/02/18/50-css-and-javascript-techniques-for-layouts-forms-and-visual-effects/">Tweet it!</a> | <a title="Bookmark in Reddit" href="http://reddit.com/submit?url=http://www.smashingmagazine.com/2010/02/18/50-css-and-javascript-techniques-for-layouts-forms-and-visual-effects/">Submit to Reddit</a> | <a href="http://forum.smashingmagazine.com/">Forum Smashing Magazine</a><br /> Post tags: <a href="http://www.smashingmagazine.com/tag/css/" rel="tag">CSS</a>, <a href="http://www.smashingmagazine.com/tag/jquery/" rel="tag">jquery</a><br /> </small></p>
]]></content:encoded>
			<wfw:commentRss>http://www.glennmarcus.com/blog/2010/02/18/50-useful-coding-techniques-css-layouts-visual-effects-and-forms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

