<?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>bulldoggie studio&#039;s blog &#187; webtoday</title>
	<atom:link href="http://bulldoggie.cn/blog/category/tutorials/webtoday/feed/" rel="self" type="application/rss+xml" />
	<link>http://bulldoggie.cn/blog</link>
	<description></description>
	<lastBuildDate>Thu, 16 Sep 2010 06:00:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>25 HTML5 Features, Tips, and Techniques you Must Know</title>
		<link>http://bulldoggie.cn/blog/2010/08/05/25-html5-features-tips-and-techniques-you-must-know-2/</link>
		<comments>http://bulldoggie.cn/blog/2010/08/05/25-html5-features-tips-and-techniques-you-must-know-2/#comments</comments>
		<pubDate>Thu, 05 Aug 2010 00:24:32 +0000</pubDate>
		<dc:creator>classiclori</dc:creator>
				<category><![CDATA[webtoday]]></category>

		<guid isPermaLink="false">http://bulldoggie.cn/blog/?p=534</guid>
		<description><![CDATA[<p>This industry moves fast — really fast! If you’re not careful, you’ll be left in its dust. So, if you’re feeling a bit overwhelmed with the coming changes/updates in HTML5, use this as a primer of the things you must know.</p><p> <span class='read-more'><a href='http://bulldoggie.cn/blog/2010/08/05/25-html5-features-tips-and-techniques-you-must-know-2/'>[Read More…]</a></span></p><div class="clear-float"></div>
		]]></description>
			<content:encoded><![CDATA[<div>
<p>This industry moves fast — really fast! If you’re not careful, you’ll be left in its dust. So, if you’re feeling a bit overwhelmed with the coming changes/updates in HTML5, use this as a primer of the things you must know.</p>
<p><span id="more-534"></span></p>
<hr />
<h2>1. New Doctype</h2>
<p>Still using that pesky, impossible-to-memorize XHTML doctype?</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;!DOCTYPE html PUBLIC &#8221;-//W3C//DTD XHTML 1.0 Transitional//EN&#8221;</li>
<li> &#8220;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&#8221;&gt;</li>
</ol>
</div>
<pre>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;</pre>
<p>If so, why? Switch to the new HTML5 doctype. You’ll live longer — as Douglas Quaid might say.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;!DOCTYPE html&gt;</li>
</ol>
</div>
<pre>&lt;!DOCTYPE html&gt;</pre>
<p>In fact, did you know that it truthfully isn’t even really necessary for HTML5? However, it’s used for current, and older browsers that require a specified <code>doctype</code>. Browsers that do not understand this doctype will simply render the contained markup in standards mode. So, without worry, feel free to throw caution to the wind, and embrace the new HTML5 doctype.</p>
<hr />
<h2>2. The Figure Element</h2>
<p>Consider the following mark-up for an image:</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;img src=&#8221;path/to/image&#8221; alt=&#8221;About image&#8221; /&gt;</li>
<li>&lt;p&gt;Image of Mars. &lt;/p&gt;</li>
</ol>
</div>
<pre>&lt;img src="path/to/image" alt="About image" /&gt;
&lt;p&gt;Image of Mars. &lt;/p&gt;</pre>
<p>There unfortunately isn’t any easy or semantic way to associate the caption, wrapped in a paragraph tag, with the image element itself. HTML5 rectifies this, with the introduction of the <code>&lt;figure&gt;</code> element. When combined with the <code>&lt;figcaption&gt;</code> element, we can now semantically associate captions with their image counterparts.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;figure&gt;</li>
<li> &lt;img src=&#8221;path/to/image&#8221; alt=&#8221;About image&#8221; /&gt;</li>
<li> &lt;figcaption&gt;</li>
<li> &lt;p&gt;This is an image of something interesting. &lt;/p&gt;</li>
<li> &lt;/figcaption&gt;</li>
<li>&lt;/figure&gt;</li>
</ol>
</div>
<pre>&lt;figure&gt;
	&lt;img src="path/to/image" alt="About image" /&gt;
	&lt;figcaption&gt;
		&lt;p&gt;This is an image of something interesting. &lt;/p&gt;
	&lt;/figcaption&gt;
&lt;/figure&gt;</pre>
<hr />
<h2>3. &lt;small&gt; Redefined</h2>
<p>Not long ago, I utilized the <code>&lt;small&gt;</code> element to create subheadings that are closely related to the logo. It’s a useful presentational element; however, now, that would be an incorrect usage. The <code>small</code> element has been redefined, more appropriately, to refer to small print. Imagine a copyright statement in the footer of your site; according to the new HTML5 definition of this element; the <code>&lt;small&gt;</code> would  be the correct wrapper for this information.</p>
<blockquote><p>The <code>small</code> element now refers to “small print.”</p></blockquote>
<hr />
<h2>4. No More <code>Types</code> for Scripts and Links</h2>
<p>You possibly still add the <code>type</code> attribute to your <code>link</code> and <code>script</code> tags.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;link rel=&#8221;stylesheet&#8221; href=&#8221;path/to/stylesheet.css&#8221; type=&#8221;text/css&#8221; /&gt;</li>
<li>&lt;script type=&#8221;text/javascript&#8221; src=&#8221;path/to/script.js&#8221;&gt;&lt;/script&gt;</li>
</ol>
</div>
<pre>&lt;link rel="stylesheet" href="path/to/stylesheet.css" type="text/css" /&gt;
&lt;script type="text/javascript" src="path/to/script.js"&gt;&lt;/script&gt;</pre>
<p>This is no longer necessary. It’s implied that both of these tags refer to stylesheets and scripts, respectively. As such, we can remove the <code>type</code> attribute all together.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;link rel=&#8221;stylesheet&#8221; href=&#8221;path/to/stylesheet.css&#8221; /&gt;</li>
<li>&lt;script src=&#8221;path/to/script.js&#8221;&gt;&lt;/script&gt;</li>
</ol>
</div>
<pre>&lt;link rel="stylesheet" href="path/to/stylesheet.css" /&gt;
&lt;script src="path/to/script.js"&gt;&lt;/script&gt;</pre>
<hr />
<h2>5. To Quote or Not to Quote.</h2>
<p>…That is the question. Remember, HTML5 is not XHTML. You don’t have to wrap your attributes in quotation marks if you don’t want to you. You don’t have to close your elements. With that said, there’s nothing wrong with doing so, if it makes you feel more comfortable. I find that this is true for myself.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;p class=myClass id=someId&gt; Start the reactor.</li>
</ol>
</div>
<pre>&lt;p id=someId&gt; Start the reactor.</pre>
<p>Make up your own mind on this one. If you prefer a more structured document, by all means, stick with the quotes.</p>
<hr />
<h2>6. Make your Content Editable</h2>
<div><img src="http://nettuts.s3.amazonaws.com/757_html5Tips/contenteditable.png" alt="Content Editable" /></div>
<p>The new browsers have a nifty new attribute that can be applied to elements, called <code>contenteditable</code>. As the name implies, this allows the user to edit any of the text contained within the element, including its children. There are a variety of uses for something like this, including an app as simple as a to-do list, which also takes advantage of local storage.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;!DOCTYPE html&gt;</li>
<li></li>
<li>&lt;html lang=&#8221;en&#8221;&gt;</li>
<li>&lt;head&gt;</li>
<li> &lt;meta charset=&#8221;utf-8&#8243;&gt;</li>
<li> &lt;title&gt;untitled&lt;/title&gt;</li>
<li>&lt;/head&gt;</li>
<li>&lt;body&gt;</li>
<li> &lt;h2&gt; To-Do List &lt;/h2&gt;</li>
<li> &lt;ul contenteditable=&#8221;true&#8221;&gt;</li>
<li> &lt;li&gt; Break mechanical cab driver. &lt;/li&gt;</li>
<li> &lt;li&gt; Drive to abandoned factory</li>
<li> &lt;li&gt; Watch video of self &lt;/li&gt;</li>
<li> &lt;/ul&gt;</li>
<li>&lt;/body&gt;</li>
<li>&lt;/html&gt;</li>
</ol>
</div>
<pre>&lt;!DOCTYPE html&gt;

&lt;html lang="en"&gt;
&lt;head&gt;
	&lt;meta charset="utf-8"&gt;
	&lt;title&gt;untitled&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
	&lt;h2&gt; To-Do List &lt;/h2&gt;
     &lt;ul contenteditable="true"&gt;
		&lt;li&gt; Break mechanical cab driver. &lt;/li&gt;
		&lt;li&gt; Drive to abandoned factory
		&lt;li&gt; Watch video of self &lt;/li&gt;
	 &lt;/ul&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<p>Or, as we learned in the previous tip, we could write it as:</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;ul contenteditable=true&gt;</li>
</ol>
</div>
<pre>&lt;ul contenteditable=true&gt;</pre>
<hr />
<h2>7. Email Inputs</h2>
<p>If we apply a <code>type</code> of “email” to form inputs, we can instruct the browser to <em>only</em> allow strings that conform to a valid email address structure. That’s right; built-in form validation will soon be here! We can’t 100% rely on this just yet, for obvious reasons. In older browsers that do not understand this “email” type, they’ll simply fall back to a regular textbox.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;!DOCTYPE html&gt;</li>
<li></li>
<li>&lt;html lang=&#8221;en&#8221;&gt;</li>
<li>&lt;head&gt;</li>
<li> &lt;meta charset=&#8221;utf-8&#8243;&gt;</li>
<li> &lt;title&gt;untitled&lt;/title&gt;</li>
<li>&lt;/head&gt;</li>
<li>&lt;body&gt;</li>
<li> &lt;form action=&#8221;" method=&#8221;get&#8221;&gt;</li>
<li> &lt;label for=&#8221;email&#8221;&gt;Email:&lt;/label&gt;</li>
<li> &lt;input id=&#8221;email&#8221; name=&#8221;email&#8221; type=&#8221;email&#8221; /&gt;</li>
<li></li>
<li> &lt;button type=&#8221;submit&#8221;&gt; Submit Form &lt;/button&gt;</li>
<li> &lt;/form&gt;</li>
<li>&lt;/body&gt;</li>
<li>&lt;/html&gt;</li>
</ol>
</div>
<pre>&lt;!DOCTYPE html&gt;

&lt;html lang="en"&gt;
&lt;head&gt;
	&lt;meta charset="utf-8"&gt;
	&lt;title&gt;untitled&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
	&lt;form action="" method="get"&gt;
		&lt;label for="email"&gt;Email:&lt;/label&gt;
		&lt;input id="email" name="email" type="email" /&gt;

		&lt;button type="submit"&gt; Submit Form &lt;/button&gt;
	&lt;/form&gt;
&lt;/body&gt;
&lt;/html&gt;</pre>
<div><img src="http://nettuts.s3.amazonaws.com/757_html5Tips/email_validation.png" alt="Email Validation" /></div>
<blockquote><p>At this time, we cannot depend on browser validation. A server/client side solution must still be implemented.</p></blockquote>
<p>It should also be noted that all the current browsers are a bit wonky when it comes to what elements and attributes they do and don’t support. For example, Opera seems to support email validation, just as long as the <code>name</code> attribute is specified. However, it does not support the <code>placeholder</code> attribute, which we’ll learn about in the next tip. Bottom line, don’t depend on this form of validation just yet…but you can still use it!</p>
<hr />
<h2>8. Placeholders</h2>
<p>Before, we had to utilize a bit of JavaScript to create placeholders for textboxes. Sure, you can initially set the <code>value</code> attribute how you see fit, but, as soon as the user deletes that text and clicks away, the input will be left blank again. The <code>placeholder</code> attribute remedies this.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;input name=&#8221;email&#8221; type=&#8221;email&#8221; placeholder=&#8221;doug@givethesepeopleair.com&#8221; /&gt;</li>
</ol>
</div>
<pre>&lt;input name="email" type="email" placeholder="doug@givethesepeopleair.com" /&gt;</pre>
<p>Again, support is shady at best across browsers, however, this will continue to improve with every new release. Besides, if the browser, like Firefox and Opera, don’t currently support the <code>placeholder</code> attribute, no harm done.</p>
<div><img src="http://nettuts.s3.amazonaws.com/757_html5Tips/validation.png" alt="Validation" /></div>
<hr />
<h2>9.  Local Storage</h2>
<p>Thanks to local storage (not officially HTML5, but grouped in for convenience’s sake), we can make advanced browsers “remember” what we type, even after the browser is closed or is refreshed.</p>
<div><object width="600" height="375"><param name="movie" value="http://www.youtube.com/v/h0uZIljjElo&amp;hl=en_US&amp;fs=1&amp;hd=1&amp;color1=0x3a3a3a&amp;color2=0x999999" /><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><embed type="application/x-shockwave-flash" width="600" height="375" src="http://www.youtube.com/v/h0uZIljjElo&amp;hl=en_US&amp;fs=1&amp;hd=1&amp;color1=0x3a3a3a&amp;color2=0x999999" allowscriptaccess="always" allowfullscreen="true"></embed></object><br />
<a href="http://www.youtube.com/user/nettutsplus">Subscribe to our YouTube page to watch all of the video tutorials!</a><br />
Or, watch this video on <a href="http://screenr.com/AaM">Screenr.com</a>.</div>
<blockquote><p>“localStorage sets fields on the domain. Even when you close the browser, reopen it, and go back to the site, it remembers all fields in localStorage.”<br />
-<a href="http://www.quirksmode.org/blog/archives/2009/06/html5_storage_t.html">QuirksBlog</a></p></blockquote>
<p>While obviously not supported across all browsers, we can expect this method to work, most notably, in Internet Explorer 8, Safari 4, and Firefox 3.5. Note that, to compensate for older browsers that won’t recognize local storage, you should first test to determine whether window.localStorage exists.</p>
<div><img src="http://img.skitch.com/20100409-cp7baa12xdc53tmuytg4kaqqe6.jpg" alt="Support matrix" /></p>
<div><em>via http://www.findmebyip.com/litmus/</em></div>
</div>
<hr />
<h2>10.  The Semantic <code>Header</code> and <code>Footer</code></h2>
<p>Gone are the days of:</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;div id=&#8221;header&#8221;&gt;</li>
<li> &#8230;</li>
<li>&lt;/div&gt;</li>
<li></li>
<li>&lt;div id=&#8221;footer&#8221;&gt;</li>
<li> &#8230;</li>
<li>&lt;/div&gt;</li>
</ol>
</div>
<pre>&lt;div id="header"&gt;
	...
&lt;/div&gt;

&lt;div id="footer"&gt;
	...
&lt;/div&gt;</pre>
<p>Divs, by nature, have no semantic structure — even after an <code>id</code> is applied. Now, with HTML5, we have access to the <code>&lt;header&gt;</code> and <code>&lt;footer&gt;</code> elements. The mark-up above can now be replaced with:</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;header&gt;</li>
<li> &#8230;</li>
<li>&lt;/header&gt;</li>
<li></li>
<li>&lt;footer&gt;</li>
<li> &#8230;</li>
<li>&lt;/footer&gt;</li>
</ol>
</div>
<pre>&lt;header&gt;
	...
&lt;/header&gt;

&lt;footer&gt;
	...
&lt;/footer&gt;</pre>
<blockquote><p>It’s fully appropriate to have multiple <code>header</code>s and <code>footer</code>s in your projects.</p></blockquote>
<p>Try not to confuse these elements with the “header” and “footer” of your website. They simply refer to their container. As such, it makes sense to place, for example, meta information at the bottom of a blog post within the <code>footer</code> element. The same holds true for the <code>header</code>.</p>
<hr />
<h2>11. More HTML5 Form Features</h2>
<p>Learn about more helpful HTML5 form features in this quick video tip.</p>
<div><object width="600" height="267"><param name="movie" value="http://www.youtube.com/v/spjOAFGxOP0&amp;hl=en_US&amp;fs=1&amp;color1=0x3a3a3a&amp;color2=0x999999&amp;hd=1" /><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><embed type="application/x-shockwave-flash" width="600" height="267" src="http://www.youtube.com/v/spjOAFGxOP0&amp;hl=en_US&amp;fs=1&amp;color1=0x3a3a3a&amp;color2=0x999999&amp;hd=1" allowscriptaccess="always" allowfullscreen="true"></embed></object><br />
<a href="http://www.youtube.com/user/nettutsplus">Subscribe to our YouTube page to watch all of the video tutorials!</a></div>
<hr />
<h2>12. Internet Explorer and HTML5</h2>
<p>Unfortunately, that dang Internet Explorer requires a bit of wrangling in order to understand the new HTML5 elements.</p>
<blockquote><p>All elements, by default, have a <code>display</code> of <code>inline</code>.</p></blockquote>
<p>In order to ensure that the new HTML5 elements render correctly as block level elements, it’s necessary at this time to style them as such.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>header, footer, article, section, nav, menu, hgroup {</li>
<li> display: block;</li>
<li>}</li>
</ol>
</div>
<pre>header, footer, article, section, nav, menu, hgroup {
   display: block;
}</pre>
<p>Unfortunately, Internet Explorer will still ignore these stylings, because it has no clue what, as an example, the <code>header</code> element even is. Luckily, there is an easy fix:</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>document.createElement(&#8220;article&#8221;);</li>
<li>document.createElement(&#8220;footer&#8221;);</li>
<li>document.createElement(&#8220;header&#8221;);</li>
<li>document.createElement(&#8220;hgroup&#8221;);</li>
<li>document.createElement(&#8220;nav&#8221;);</li>
<li>document.createElement(&#8220;menu&#8221;);</li>
</ol>
</div>
<pre>document.createElement("article");
document.createElement("footer");
document.createElement("header");
document.createElement("hgroup");
document.createElement("nav");
document.createElement("menu");</pre>
<p>Strangely enough, this code seems to trigger Internet Explorer. To simply this process for each new application, Remy Sharp <a href="http://remysharp.com/2009/01/07/html5-enabling-script/">created a script</a>, commonly referred to as the HTML5 shiv.  This script also fixes some printing issues as well.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;!&#8211;[if IE]&gt;</li>
<li>&lt;script src=&#8221;http://html5shim.googlecode.com/svn/trunk/html5.js&#8221;&gt;&lt;/script&gt;</li>
<li>&lt;![endif]&#8211;&gt;</li>
</ol>
</div>
<pre>&lt;!--[if IE]&gt;
&lt;script src="http://html5shim.googlecode.com/svn/trunk/html5.js"&gt;&lt;/script&gt;
&lt;![endif]--&gt;</pre>
<hr />
<h2>13. hgroup</h2>
<p>Imagine that, in my site’s header, I had the name of my site, immediately followed by a subheading. While we can use an <code>&lt;h1&gt;</code> and <code>&lt;h2&gt;</code> tag, respectively, to create the mark-up, there still wasn’t, as of HTML4, an easy way to semantically illustrate the relationship between the two. Additionally, the use of an <code>h2</code> tag presents more problems, in terms of hierarchy, when it comes to displaying other headings on the page. By using the <code>hgroup</code> element, we can group these headings together, without affecting the flow of the document’s outline.</p>
<div><script type="text/javascript">// < ![CDATA[
google_ad_client = "pub-9093712935949486";
/* 300x250 nettuts middle tutsads */
google_ad_slot = "1775681443";
google_ad_width = 300;
google_ad_height = 250;
// ]]&gt;</script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript">
</script><script src="http://pagead2.googlesyndication.com/pagead/expansion_embed.js"></script><script src="http://googleads.g.doubleclick.net/pagead/test_domain.js"></script><script type="text/javascript">// < ![CDATA[
google_protectAndRun("ads_core.google_render_ad", google_handleError, google_render_ad);
// ]]&gt;</script><ins></ins><ins id="google_ads_frame1_anchor"></ins></div>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;header&gt;</li>
<li> &lt;hgroup&gt;</li>
<li> &lt;h1&gt; Recall Fan Page &lt;/h1&gt;</li>
<li> &lt;h2&gt; Only for people who want the memory of a lifetime. &lt;/h2&gt;</li>
<li> &lt;/hgroup&gt;</li>
<li>&lt;/header&gt;</li>
</ol>
</div>
<pre>&lt;header&gt;
	&lt;hgroup&gt;
		&lt;h1&gt; Recall Fan Page &lt;/h1&gt;
		&lt;h2&gt; Only for people who want the memory of a lifetime. &lt;/h2&gt;
	&lt;/hgroup&gt;
&lt;/header&gt;</pre>
<hr />
<h2>14. Required Attribute</h2>
<p>Forms allow for a new <code>required</code> attribute, which specifies, naturally, whether a particular input is required. Dependent upon your coding preference, you can declare this attribute in one of two ways:</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;input type=&#8221;text&#8221; name=&#8221;someInput&#8221; required&gt;</li>
</ol>
</div>
<pre>&lt;input type="text" name="someInput" required&gt;</pre>
<p>Or, with a more structured approach.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;input type=&#8221;text&#8221; name=&#8221;someInput&#8221; required=&#8221;required&#8221;&gt;</li>
</ol>
</div>
<pre>&lt;input type="text" name="someInput" required="required"&gt;</pre>
<p>Either method will do. With this code, and within browsers that support this attribute, a form cannot be submitted if that “someInput” input is blank. Here’s a quick example; we’ll also add the placeholder attribute as well, as there’s no reason not to.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;form method=&#8221;post&#8221; action=&#8221;"&gt;</li>
<li> &lt;label for=&#8221;someInput&#8221;&gt; Your Name: &lt;/label&gt;</li>
<li> &lt;input type=&#8221;text&#8221; id=&#8221;someInput&#8221; name=&#8221;someInput&#8221; placeholder=&#8221;Douglas Quaid&#8221; required&gt;</li>
<li> &lt;button type=&#8221;submit&#8221;&gt;Go&lt;/button&gt;</li>
<li>&lt;/form&gt;</li>
</ol>
</div>
<pre>&lt;form method="post" action=""&gt;
	&lt;label for="someInput"&gt; Your Name: &lt;/label&gt;
	&lt;input type="text" id="someInput" name="someInput" placeholder="Douglas Quaid" required&gt;
	&lt;button type="submit"&gt;Go&lt;/button&gt;
&lt;/form&gt;</pre>
<div><img src="http://nettuts.s3.amazonaws.com/757_html5Tips/placeholder_required.png" alt="Required and Placeholder Attributes" /></div>
<p>If the input is left blank, and the form is submitted, the textbox will be highlighted.</p>
<hr />
<h2>15. Autofocus Attribute</h2>
<p>Again, HTML5 removes the need for JavaScript solutions. If a particular input should be “selected,” or focused, by default, we can now utilize the <code>autofocus</code> attribute.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;input type=&#8221;text&#8221; name=&#8221;someInput&#8221; placeholder=&#8221;Douglas Quaid&#8221; required autofocus&gt;</li>
</ol>
</div>
<pre>&lt;input type="text" name="someInput" placeholder="Douglas Quaid" required autofocus&gt;</pre>
<p>Interestingly enough, while I personally tend to prefer a more XHTML approach (using quotation marks, etc.), writing <code>"autofocus=autofocus"</code> feels odd. As such, we’ll stick with the single keyword approach.</p>
<hr />
<h2>16. Audio Support</h2>
<p>No longer do we have to rely upon third party plugins in order to render audio. HTML5 now offers the <code>&lt;audio&gt;</code> element. Well, at least, ultimately, we won’t have to worry about these plugins. For the time being, only the most recent of browsers offer support for HTML5 audio. At this time, it’s still a good practice to offer some form of backward compatibility.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;audio autoplay=&#8221;autoplay&#8221; controls=&#8221;controls&#8221;&gt;</li>
<li> &lt;source src=&#8221;file.ogg&#8221; /&gt;</li>
<li> &lt;source src=&#8221;file.mp3&#8243; /&gt;</li>
<li> &lt;a href=&#8221;file.mp3&#8243;&gt;Download this file.&lt;/a&gt;</li>
<li>&lt;/audio&gt;</li>
</ol>
</div>
<pre>&lt;audio autoplay="autoplay" controls="controls"&gt;
	&lt;source src="file.ogg" /&gt;
	&lt;source src="file.mp3" /&gt;
	<a href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/file.mp3">Download this file.</a>
&lt;/audio&gt;</pre>
<p>Mozilla and Webkit don’t fully get along just yet, when it comes to the audio format. Firefox will want to see an .ogg file, while Webkit browsers will work just fine with the common .mp3 extension. This means that, at least for now, you should create two versions of the audio.</p>
<p>When Safari loads the page, it won’t recognize that .ogg format, and will skip it and move on to the mp3 version, accordingly. Please note that IE, per usual, doesn’t support this, and Opera 10 and lower can only work with .wav files.</p>
<hr />
<h2>17.  Video Support</h2>
<p>Much like the <code>&lt;audio&gt;</code> element, we also, of course, have HTML5 video as well in the new browsers! In fact, just recently, <a href="http://apiblog.youtube.com/2010/07/new-way-to-embed-youtube-videos.html">YouTube announced a new HTML5 video embed</a> for their videos, for browsers which support it. Unfortunately, again, because the HTML5 spec doesn’t specify a specific codec for video, it’s left to the browsers to decide. While Safari, and Internet Explorer 9 can be expected to support video in the H.264 format (which Flash players can play), Firefox and Opera are sticking with the open source Theora and Vorbis formats. As such, when displaying HTML5 video, you must offer both formats.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;video controls preload&gt;</li>
<li> &lt;source src=&#8221;cohagenPhoneCall.ogv&#8221; type=&#8221;video/ogg; codecs=&#8217;vorbis, theora&#8217;&#8221; /&gt;</li>
<li> &lt;source src=&#8221;cohagenPhoneCall.mp4&#8243; type=&#8221;video/mp4; &#8217;codecs=&#8217;avc1.42E01E, mp4a.40.2&#8242;&#8221; /&gt;</li>
<li> &lt;p&gt; Your browser is old. &lt;a href=&#8221;cohagenPhoneCall.mp4&#8243;&gt;Download this video instead.&lt;/a&gt; &lt;/p&gt;</li>
<li>&lt;/video&gt;</li>
</ol>
</div>
<pre>&lt;video controls preload&gt;
	&lt;source src="cohagenPhoneCall.ogv" type="video/ogg; codecs='vorbis, theora'" /&gt;
	&lt;source src="cohagenPhoneCall.mp4" type="video/mp4; 'codecs='avc1.42E01E, mp4a.40.2'" /&gt;
	&lt;p&gt; Your browser is old. &lt;a href="cohagenPhoneCall.mp4"&gt;Download this video instead.&lt;/a&gt; &lt;/p&gt;
&lt;/video&gt;</pre>
<blockquote><p>Chrome can correctly display video that is encoded in both the “ogg” and “mp4″ formats.</p></blockquote>
<p>There are a few things worth noting here.</p>
<ol>
<li>We aren’t technically required to set the <code>type</code> attribute; however, if we don’t, the browser has to figure out the type itself. Save some bandwidth, and declare it yourself.</li>
<li>Not all browsers understand HTML5 video. Below the <code>source</code> elements, we can either offer a download link, or embed a Flash version of the video instead. It’s up to you.</li>
<li> The <code>controls</code> and <code>preload</code> attributes will be discussed in the next two tips.</li>
</ol>
<hr />
<h2>18. Preload Videos</h2>
<p>The <code>preload</code> attribute does exactly what you’d guess. Though, with that said, you should first decide whether or not you want the browser to preload the video. Is it necessary? Perhaps, if the visitor accesses a page, which is specifically made to display a video, you should definitely preload the video, and save the visitor a bit of waiting time. Videos can be preloaded by setting <code>preload="preload"</code>, or by simply adding <code>preload</code>. I prefer the latter solution; it’s a bit less redundant.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;video preload&gt;</li>
</ol>
</div>
<pre>&lt;video preload&gt;</pre>
<hr />
<h2>19. Display Controls</h2>
<p>If you’re working along with each of these tips and techniques, you might have noticed that, with the code above, the video above appears to be only an image, without any controls. To render these play controls, we must specify the <code>controls</code> attribute within the <code>video</code> element.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;video preload controls&gt;</li>
</ol>
</div>
<pre>&lt;video preload controls&gt;</pre>
<div><img src="http://nettuts.s3.amazonaws.com/757_html5Tips/video.jpg" alt="Options" /></div>
<p>Please note that each browser renders its player differently from one another.</p>
<hr />
<h2>20. Regular Expressions</h2>
<p>How often have you found yourself writing some quickie regular expression to verify a particular textbox. Thanks to the new <code>pattern</code> attribute, we can insert a regular expression directly into our markup.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;form action=&#8221;" method=&#8221;post&#8221;&gt;</li>
<li> &lt;label for=&#8221;username&#8221;&gt;Create a Username: &lt;/label&gt;</li>
<li> &lt;input type=&#8221;text&#8221;</li>
<li> name=&#8221;username&#8221;</li>
<li> id=&#8221;username&#8221;</li>
<li> placeholder=&#8221;4 &lt;&gt; 10&#8243;</li>
<li> pattern=&#8221;[A-Za-z]{4,10}&#8221;</li>
<li> autofocus</li>
<li> required&gt;</li>
<li> &lt;button type=&#8221;submit&#8221;&gt;Go &lt;/button&gt;</li>
<li>&lt;/form&gt;</li>
</ol>
</div>
<pre>&lt;form action="" method="post"&gt;
	&lt;label for="username"&gt;Create a Username: &lt;/label&gt;
   	&lt;input type="text"
	   name="username"
	   id="username"
	   placeholder="4 &lt;&gt; 10"
	   pattern="[A-Za-z]{4,10}"
	   autofocus
	   required&gt;
	&lt;button type="submit"&gt;Go &lt;/button&gt;
&lt;/form&gt;</pre>
<p>If you’re moderately familiar with regular expressions, you’ll be aware that this pattern: <code>[A-Za-z]{4,10}</code> accepts only upper and lowercase letters. This string must also have a minimum of four characters, and a maximum of ten.</p>
<p>Notice that we’re beginning to combine all of these new awesome attributes!</p>
<p><em>If regular expressions are foreign to you, <a href="http://net.tutsplus.com/tutorials/javascript-ajax/you-dont-know-anything-about-regular-expressions/">refer here</a>. </em></p>
<hr />
<h2>21. Detect Support for Attributes</h2>
<p>What good are these attributes if we have no way of determining whether the browser recognizes them? Well, good point; but there are several ways to figure this out. We’ll discuss two. The first option is to utilize the excellent <a href="http://modernizr.com/">Modernizr</a> library. Alternatively, we can create and dissect these elements to determine what the browsers are capable of. For instance, in our previous example, if we want to determine if the browser can implement the <code>pattern</code> attribute, we could add a bit of JavaScript to our page:</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>alert( &#8217;pattern&#8217; in document.createElement(&#8216;input&#8217;) ) // boolean;</li>
</ol>
</div>
<pre>alert( 'pattern' in document.createElement('input') ) // boolean;</pre>
<p>In fact, this is a popular method of determining browser compatibility. The jQuery library utilizes this trick. Above, we’re creating a new <code>input</code> element, and determining whether the <code>pattern</code> attribute is recognized within. If it is, the browser supports this functionality. Otherwise, it of course does not.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;script&gt;</li>
<li>if (!&#8217;pattern&#8217; in document.createElement(&#8216;input&#8217;) ) {</li>
<li> // do client/server side validation</li>
<li>}</li>
<li>&lt;/script&gt;</li>
</ol>
</div>
<pre>&lt;script&gt;
if (!'pattern' in document.createElement('input') ) {
	// do client/server side validation
}
&lt;/script&gt;</pre>
<p><em>Keep in mind that this relies on JavaScript! </em></p>
<hr />
<h2>22. Mark Element</h2>
<p>Think of the <code>&lt;mark&gt;</code> element as a highlighter. A string wrapped within this tag should be relevant to the current actions of the user. For example, if I searched for “Open your Mind” on some blog, I could then utilize some JavaScript to wrap each occurrence of this string within <code>&lt;mark&gt;</code> tags.</p>
<div>
<div>
<div><a onclick="dp.sh.Toolbar.Command('ViewSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">view plain</a><a onclick="dp.sh.Toolbar.Command('CopyToClipboard',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">copy to clipboard</a><a onclick="dp.sh.Toolbar.Command('PrintSource',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">print</a><a onclick="dp.sh.Toolbar.Command('About',this);return false;" href="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/#">?</a></div>
</div>
<ol>
<li>&lt;h3&gt; Search Results &lt;/h3&gt;</li>
<li>&lt;p&gt; They were interrupted, just after Quato said, &lt;mark&gt;&#8221;Open your Mind&#8221;&lt;/mark&gt;. &lt;/p&gt;</li>
</ol>
</div>
<pre>&lt;h3&gt; Search Results &lt;/h3&gt;
&lt;p&gt; They were interrupted, just after Quato said, &lt;mark&gt;"Open your Mind"&lt;/mark&gt;. &lt;/p&gt;</pre>
<hr />
<h2>23. When to Use a &lt;div&gt;</h2>
<p>Some of us initially questioned when we should use plain-ole <code>div</code>s. Now that we have access to <code>header</code>s, <code>article</code>s, <code>section</code>s, and <code>footer</code>s, is there ever a time to use a…<code>div</code>? Absolutely.</p>
<blockquote><p><code>Div</code>s should be utilized when there’s no better element for the job.</p></blockquote>
<p>For example, if you find that you need to wrap a block of code within a wrapper element specifically for the purpose of positioning the content, a <code>&lt;div&gt;</code> makes perfect sense. However, if you’re instead wrapping a new blog post, or, perhaps, a list of links in your footer, consider using the <code>&lt;article&gt;</code> and <code>&lt;nav&gt;</code> elements, respectively. They’re more semantic.</p>
<hr />
<h2>24. What to Immediately Begin Using</h2>
<p>With all this talk about HTML5 <a href="http://blogs.techrepublic.com.com/programming-and-development/?p=718">not being complete until 2022</a>, many people disregard it entirely – which is a big mistake. In fact, there are a handful of HTML5 features that we can use in all our projects right now! Simpler, cleaner code is always a good thing. In today’s video quick tip, I’ll show you a handful of options.</p>
<div><object width="600" height="375"><param name="movie" value="http://www.youtube.com/v/HzCkSv3s0-k&amp;hl=en_US&amp;hd=1&amp;fs=1&amp;color1=0x3a3a3a&amp;color2=0x999999" /><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><embed type="application/x-shockwave-flash" width="600" height="375" src="http://www.youtube.com/v/HzCkSv3s0-k&amp;hl=en_US&amp;hd=1&amp;fs=1&amp;color1=0x3a3a3a&amp;color2=0x999999" allowscriptaccess="always" allowfullscreen="true"></embed></object><br />
<a href="http://www.youtube.com/user/nettutsplus">Subscribe to our YouTube page to watch all of the video tutorials!</a></div>
<hr />
<h2>25.  What is Not HTML5</h2>
<p>People can be forgiven for assuming that awesome JavaScript-less transitions are grouped into the all-encompassing HTML5. Hey — even Apple has inadvertently promoted this idea. For non-developers, who cares; it’s an easy way to refer to modern web standards. However, for us, though it may just be semantics, it’s important to understand exactly what <strong>is not</strong> HTML5.</p>
<ol>
<li> <strong>SVG: </strong> Not HTML5. It’s at least five years old.</li>
<li> <strong>CSS3: </strong>Not HTML5. It’s…CSS.</li>
<li> <strong>Client Storage: </strong> Not HTML5. It was at one point, but was removed from the spec, due to the fact that many worried that it, as a whole, was becoming too complicated. It now has its own specification.</li>
<li><strong>Web Sockets: </strong>Not HTML5. Again, was exported to its own specification.</li>
</ol>
<p>Regardless of how much distinction you require, all of these technologies can be grouped into the modern web stack. In fact, many of these branched specifications are still managed by the same people.</p>
<hr />Thanks for reading! We’ve covered a lot, but have still only scratched the surface of what’s possible with HTML5. I hope this served as a helpful primer!</p>
</div>
<p><!-- PHP 5.x --></p>


<p>Related posts:<ol><li><a href='http://bulldoggie.cn/blog/2009/12/28/120-tips-tricks-and-tuts-from-2009-worth-your-time/' rel='bookmark' title='120 Tips, Tricks, and Tuts from 2009 Worth your Time'>120 Tips, Tricks, and Tuts from 2009 Worth your Time</a></li>
<li><a href='http://bulldoggie.cn/blog/2010/01/25/fantastic-tips-for-shooting-bravely-in-the-suncopy-from-photo-tutsplus-com/' rel='bookmark' title='Fantastic Tips for Shooting Bravely in the Sun(copy from photo.tutsplus.com)'>Fantastic Tips for Shooting Bravely in the Sun(copy from photo.tutsplus.com)</a></li>
<li><a href='http://bulldoggie.cn/blog/2009/12/12/9-tips-for-a-perfect-portrait-background/' rel='bookmark' title='9 Tips for a Perfect Portrait Background'>9 Tips for a Perfect Portrait Background</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://bulldoggie.cn/blog/2010/08/05/25-html5-features-tips-and-techniques-you-must-know-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/file.mp3" length="0" type="audio/mpeg" />
		</item>
		<item>
		<title>Web Design In Poland</title>
		<link>http://bulldoggie.cn/blog/2010/07/17/web-design-in-poland/</link>
		<comments>http://bulldoggie.cn/blog/2010/07/17/web-design-in-poland/#comments</comments>
		<pubDate>Fri, 16 Jul 2010 23:13:07 +0000</pubDate>
		<dc:creator>classiclori</dc:creator>
				<category><![CDATA[experience for Webdesign]]></category>
		<category><![CDATA[layout]]></category>
		<category><![CDATA[webtoday]]></category>

		<guid isPermaLink="false">http://bulldoggie.cn/blog/?p=464</guid>
		<description><![CDATA[<p>Vodka, pickled cucumbers and Pope John Paul II might spring to mind when someone mentions <strong>Poland</strong>. Obviously there’s more to Poland than that. On the world map of design, Poland is marked by creative agencies that produce high-level design and employ some of the best programmers in the world. There’s also a crowd of freelancers and visionaries who have received worldwide recognition.</p><p>For the people I interviewed, Web design is life. The art directors and freelancers highlighted here work in all sorts of environments, and they answer questions related to our field. You’ll have the opportunity to see Polish Web design from a number of perspectives — and to form your own opinion while browsing selected productions.</p><p> <span class='read-more'><a href='http://bulldoggie.cn/blog/2010/07/17/web-design-in-poland/'>[Read More…]</a></span></p><div class="clear-float"></div>
		]]></description>
			<content:encoded><![CDATA[<p>Vodka, pickled cucumbers and Pope John Paul II might spring to mind when someone mentions <strong>Poland</strong>. Obviously there’s more to Poland than that. On the world map of design, Poland is marked by creative agencies that produce high-level design and employ some of the best programmers in the world. There’s also a crowd of freelancers and visionaries who have received worldwide recognition.</p>
<p>For the people I interviewed, Web design is life. The art directors and freelancers highlighted here work in all sorts of environments, and they answer questions related to our field. You’ll have the opportunity to see Polish Web design from a number of perspectives — and to form your own opinion while browsing selected productions.</p>
<p><span id="more-464"></span></p>
<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>The State Of Things</h3>
<p><strong>Question: Can you name some of the milestones in Polish Web design? What are the biggest and most important productions in recent years?</strong></p>
<p><strong>Jacek Opaluch</strong> of <a title="K2 Internet" href="http://www.k2.pl/">K2 Internet</a>: If milestones are things that have changed the perception of Web design, we have to mention Internet locations, events and designs. In my opinion, the locations would inlude mocnweb.pl, a forum that no longer functions and is probably only remembered by people over 30. It was a place where people could share their initial experiences and which, if I remember correctly, had the first carefully selected catalogue of Polish Web designers’ websites.</p>
<p>Then there was the everlasting <a href="http://www.webesteem.pl/">webesteem.pl</a>, steadily breaking records as the website with “the layout that never changed.” There were always several people around — some significant, like Bartek Gołębiowski, Jędrek Kostecki, Bartek Rozbicki, Wojtek Krosnowski, Wojtek Piotrowski, Piotr Łupiński and Łukasz Twardowski — whose attitude toward the Internet undoubtedly had great influence on thinking and design. There were many more people whose names I don’t remember, unfortunately, for which I apologize.</p>
<p><a href="http://chopin2010.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/04/chopin.jpg" alt="Chopin in Showcase Of Web Design In Poland" width="500" height="329" /></a><br />
<em><a href="http://chopin2010.pl/">Chopin2010.pl</a></em></p>
<p>Certain designs are stuck in my mind. These were well known, not just in Poland, and sometimes they were great examples to follow. Some have been replaced by newer versions, so giving the URLs here might be pointless, but they definitely include: Max Weber’s <a href="http://www.pdk.pl/index_f.html">pdk.pl</a>, a Flash portal with much character (probably the first in Poland); <a href="http://pl.nokia.pl/modnanokia/">Nokia</a> (created by K2 Internet); <a href="http://plama.art.pl/">plama.art.pl</a> and its subsequent versions; <a href="http://www.feta.pl/">feta.pl</a>; <a href="http://www.sullivan.pl/">Sullivan’s Productions</a>; <a href="http://www.click5.pl/">click5.pl</a>; <a href="http://www.arsthanea.com/">Ars Thanea</a>; <a href="http://www.cookie.pl/">cookie.pl</a>; and recently, <a href="http://www.studiokxx.com/">StudioKxx</a> and <a href="http://www.huncwot.com/">huncwot.com</a>. These are all first-class websites. Unfortunately it’s impossible for me to name every excellent website.</p>
<p>In my opinion there were two other crucial events that gave shape to things: agencies went public (a sort of goodbye to the formative years of Web design) and eBay debuted in Poland. These events showed the quality of our service and proved that the Polish internaut had been highly underestimated abroad.</p>
<p><strong>Question: Are there any significant differences between Web designing in Poland and in the rest of Europe when it comes to artistic development?</strong></p>
<p><strong>Jacek Opaluch</strong>: There are differences in budget, in the attitudes of clients and in understanding the Internet’s potential. Statistically, I don’t see any difference in the quality of the things we do: we win awards, we are jurors and we build among the best of the websites that present outstanding design — just like the rest of the world.</p>
<p><a href="http://www.zakochajsiewkolorze.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/zakochaj-sie-w-kolorze.jpg" alt="Zakochaj-sie-w-kolorze in Showcase Of Web Design In Poland" width="500" height="329" /></a><br />
<em>Zakochaj się w kolorze.</em></p>
<p><strong>Kamil Kaniuk</strong> of <a href="http://www.merixstudio.pl/">Merix Studio</a>: Polish programmers and coders are generally well regarded, which results from our observations and experience — often in cooperation with foreign firms. Numerous highly skilled Web developers are in Poland whose code is of world-class quality. Here at Merix Studio, we are searching for such people. The skills of our coders have been appreciated by the British company Independent News and Media, which prepared a series of test tasks for us before they decided to commission us to work on their leading brands (The Independent and Herald, for example).</p>
<p>We are less inspired by Flash achievements and augmented reality (so popular right now) than are other interactive agencies in Poland. We are more interested in the productions of smaller flexible firms such as 37signals, nclud, Reactive and Clearleft. We invest in flexible and cost-optimal open-source software (Drupal, WordPress, Magento), because it can easily substitute for expensive commercial solutions.</p>
<p>Open-source software is regarded slightly differently in Poland than it is in Western countries; the opinion that any self-respecting interactive agency should have its own original content management system (CMS) still prevails here, but this is not so. Just look at the US government: Whitehouse.gov is based on Drupal.</p>
<p>In the current period of economic slowdown, Western companies are looking for ways to reduce costs while maintaining good quality. Many companies outsource to such countries as Poland, and these companies often have funds at their disposal that allow them to be more open to creative ideas. This is encouraging for Polish Web designers.</p>
<p><a href="http://www.warszawska-jesien.art.pl/08/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/warszawska-jesien.jpg" alt="Warszawska-jesien in Showcase Of Web Design In Poland" width="500" height="329" /></a><br />
<em><a href="http://www.warszawska-jesien.art.pl/08/">Warszawska Jesień 2008</a></em></p>
<p><strong>Question: When was the starting point of innovative Web design in Poland? When did new media settle in Poland for good?</strong></p>
<p><strong>Łukasz Twardowski</strong> of <a href="http://www.cookie.pl/">Cookie.pl</a>: The first thing I remember from the Internet was an interactive advertising campaign for Frugo juice. The campaign was created by an agency, and it was the first Polish viral ad. It probably significantly increased interest in the Internet as a medium for advertising, and it collided with the so-called “Internet bubble,” which burst before any innovative design came into being.</p>
<p>Still, this was the time when most designers I admire became active. Some independent websites on Web design were created, like Mocny Web or Webesteem. They attracted people who already thought of themselves as designers for new media. Looking back, I see that what pushed us forward was energy and optimism rather than skills and knowledge.</p>
<p>I think we became aware of both (i.e. skills and the role of Web design) about three or four years ago, but the awareness wasn’t strong yet. The major problem with Web design in Poland is that the best interactive agencies give priority to advertising, and design is a secondary issue. Small clients such as photographers and architects, who might desire and deserve the best designs, often don’t have enough money to employ professionals. It’s great to see, though, that cultural institutions have more money to spend on the Internet, and they spend it wisely.</p>
<p><strong>Question: Is it possible to identify specific patterns in Polish Web design? Is every significant website really different from all the rest?</strong></p>
<p><strong>Łukasz Twardowski</strong>: I wish Polish Web design had German discipline, Scandinavian simplicity and our knightly imagination. Polish designs are often much more daring than those of our neighbours. Still, if we want to develop our philosophy of design and be visible to the world, then we have to make more effort.</p>
<p>The economy in Poland has been improving, and the only thing we need now is more energy and optimism. Mocny Web died naturally, and Webesteem is on its last legs. What we lack is a central forum where young designers (in a sense, all of us are “young”) can see the spectacular Web designs and discuss them.</p>
<p><a href="http://www.flirt-commando.com/en/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/04/flirt-camp.jpg" alt="Flirt-camp in Showcase Of Web Design In Poland" width="500" height="329" /></a><br />
<em><a href="http://www.flirt-commando.com/en/">Flirt Camp</a></em></p>
<p><strong>Kamil Kaniuk</strong>: We think that in Poland there are still no styles in Web design that would distinguish our country from others — that is, that any styles are unequalled. Although one could fairly easily enumerate some common features of designs created elsewhere (the meticulous detail and profound illustrations of Russia, for example, or the graphic-rich interfaces of the United States), no specific style dominates in Poland. However, the “transfer of ideas” (say from West to East) is much faster now than it was a few years ago.</p>
<p>Too often a design is a compromise between the vision of the designer and the requirements of the customer. Such designs tend to undergo amendments by the customer, which can change their original form. In our opinion, the openness of customers to modern solutions (e.g. non-standard interfaces based on JavaScript, like Xpiritmental) is less common in Poland than elsewhere. Foreign customers seem to be more open to our ideas and give us greater freedom, and they are ready to make use of technologies like JavaScript and AJAX.</p>
<p>That opens the gate to creativity and gives the freedom to implement interesting solutions. In many Polish agencies — including those that work with big brands and budgets — some cheap and mediocre designs are created out of necessity.</p>
<p><a href="http://kula.gov.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/kula.jpg" alt="Kula in Showcase Of Web Design In Poland" width="500" height="329" /></a><br />
<em><a href="http://kula.gov.pl/">Kula.gov.pl</a></em></p>
<p><strong>Question: What is it like to work as a freelancer in Poland? Is it drudgery or a stress-free job? Is it about keeping loyal clients or constantly searching for new ones?</strong></p>
<p><a href="http://designin.pl/">Jan Stańko</a>: We shouldn’t generalize; every freelancer is different. Starting off is definitely difficult. Without a strong position in the market, you have to look for clients on your own, and you have to convince people that you are trustworthy and deserve opportunities. There are plenty of freelancers, but unfortunately the majority of them are young and immature and have no idea about the business. They finish school and immediately call themselves professionals. It can end badly: very often the honest designers who treat the profession seriously and think of it as their future have to suffer the consequences.</p>
<p>In time, the serious freelancer gets clients and agencies start knocking on their door. Then you can choose the tasks you like the most, and that brings more money. Work gets difficult when you want to earn more money; it can mean sleepless nights, gallons of coffee and in my case, unfortunately, plenty of cigarettes.</p>
<p>There are moments of anxiety as well, usually brought on by people who pretend to know everything about the Internet but actually know very little. I guess the best solution is to cooperate with agencies on a regular basis. Agencies can take the burden of work overload and stress off your back. Also, their complex services give you the opportunity to meet more interesting clients. As for the future, time will tell. I’m not even halfway through my career. Trophies are still a long way ahead!</p>
<p><a href="http://www.bubole.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/bubole.jpg" alt="Bubole in Showcase Of Web Design In Poland" width="500" height="329" /></a><br />
<em><a href="http://www.bubole.pl/">Bubole</a></em></p>
<p><a href="http://www.nastaly.com/">Rafał Nastały</a>: Earning one’s living as a freelancer in Poland without a recognized name can be incredibly tough. Independent clients often don’t want to sign contracts or pre-pay. They also think that preparing a layout is a piece of cake, so when they hear the price, they often back out. It’s very frustrating. It’s much more pleasant to cooperate with several agencies that can give you a fairly constant number of orders.</p>
<p><a href="http://www.biernawski.com/">Piotr Biernawski</a>: I have five or six regular clients. Sometimes a client withdraws, and it’s usually because of money. It’s never a disagreement about the terms of the contract but about actually sticking to these terms (payment can be long delayed, etc.). But when some go, others come. I’ve been working with longstanding clients for five years now.</p>
<p>Drudgery or a piece of cake? Definitely not a piece of cake. If it wasn’t for my strong connection to the mountains, which I love and where I do my hobbies, I would probably move to a bigger city and look for a full-time job. I also have a wife and child who are not very keen to move. However, I don’t think freelancing is drudgery; I can’t afford the latest model of BMW, but I work only about two hours a day. Even though you need to be psychologically strong to work like this, the lifestyle is great.</p>
<p><a href="http://www.ghentelmen.com/">Łukasz Bronisz</a>: I think it depends on the individual. Everyone arranges their time and work environment differently. Some people prefer working at night and waking up at dusk in order to meet a deadline. Most of us, however, try to work during regular hours. It allows you to be in touch with agencies, allows you to make light changes and corrections and lets you have a private life too.</p>
<p>I imagine that freelancing in Poland is similar to freelancing in other countries. It can be hard sometimes because of tight schedules or having a number of projects going at the same time. On the other hand, you always have the opportunity to relax or even take a break for a couple of days. No one arranges your time or dictates your schedule.</p>
<p>Also, though, no one checks on you. If you choose to freelance, for which your income depends on how much you work, it’s reasonable to cooperate with several agencies. Doing this usually gives you enough orders that you don’t have to worry about the next month and can concentrate on your work. Of course, it’s always good to look for new projects so that you develop and diversify your designs.</p>
<p><a href="http://www.ghentelmen.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/07/matibu.jpg" alt="Matibu in Showcase Of Web Design In Poland" width="500" height="332" /></a><br />
<em>Łukasz Bronisz</em></p>
<p><a href="http://www.substancja.pl/">Konrad Wysokiński</a>: It’s still quite difficult to get by as a freelancer in Poland, although there are probably some people who don’t have to worry about work or can be picky about contracts. I often get the impression that people still don’t know what good design is or know that it costs money. For many people, the Internet is still a must: “People are talking about it, so let’s make a website — but make it as cheap as possible.” Some company owners have this attitude. As a result they ask someone, anyone, who knows a little bit about Photoshop (a brother-in-law’s daughter) to create the cheapest website possible. Thankfully, this has been changing steadily, like our society in general, and I hope that our sensitivity to the profession of Web design will increase with time.</p>
<p><a href="http://touchdesign.pl/">Mateusz Jakobsze</a>: The Web design market in Poland has been gradually expanding. A lot of people freelance to get rid of the constraints of working for agencies. They want creative freedom and to earn more money. Undoubtedly, an advantage to freelancing in Poland is the opportunity to work for clients abroad who pay in Euro or American dollars. The ability to choose which clients and agencies to cooperate with is a big advantage as well. I always try to look abroad for new clients and to network. I have some regular clients as well as a couple of interactive agencies that I often collaborate with. We socialize not only at work but also at parties and unofficial get-togethers. It’s good to maintain informal relationships with your clients.</p>
<p><a href="http://touchdesign.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/jakobsze.jpg" alt="Jakobsze in Showcase Of Web Design In Poland" width="500" height="329" /></a><br />
<em>Mateusz Jakobsze</em></p>
<p><strong>Question: How does the Web design and development market look in Poland? Is it possible to earn one’s living from freelancing alone?</strong></p>
<p><a href="http://designin.pl/">Jan Stańko</a>: It is possible, definitely. Many people are self-subsisting freelancers, including me. There are quite a lot of agencies and enough clients, and whether we get by depends on our hard work, consistency and responsibility. When it comes to cooperation with agencies, it usually goes smoothly; it’s the clients who are the weak link. But even that has been changing. The Internet is still a brand new thing for many people. Non-professionals find it difficult to catch up with the news that keeps popping up in the field, and sometimes this can result in misunderstanding.</p>
<p><a href="http://www.nastaly.com/">Rafał Nastały</a>: Freelancing is not for everyone. You need to be self-disciplined and consistent to work as a freelancer. When you collaborate with agencies that know how to communicate with clients and that pay generously, you can have a relatively high standard of living.</p>
<p>One negative aspect is the lack of credibility at the bank (getting a big loan is difficult), so if you’re not a high-profile Web designer, the best option is to have a full-time job and take additional work from other sources now and then. This creates financial stability. A bonus like that — a well-paid creative task — is actually very nice. There are of course some freelancers for whom one layout is worth more than the monthly earning of others.</p>
<p><a href="http://www.warszawska-jesien.art.pl/09/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/warszawska-jesien-091.jpg" alt="Warszawska-jesien-091 in Showcase Of Web Design In Poland" width="500" height="329" /></a><br />
<em><a href="http://www.warszawska-jesien.art.pl/09/">Warszawska Jesień 2009</a></em></p>
<p><a href="http://www.biernawski.com/">Piotr Biernawski</a>: It is certainly possible to earn a living from freelancing. I know some people who earn more than ten thousand a month. I’m not talking about famous names here, but about people from small towns, “unheard of” names in our line of business. Considering the time I devote to work, I am not an example of this, but I can afford everyday living: mortgage, alcohol and cigarettes!</p>
<p><a href="http://www.ghentelmen.com/">Łukasz Bronisz</a>: I think that the Polish market is pretty good. It’s a young market. Actually the whole business is young. Polish clients have become more aware of the Internet in recent years. Plenty of talented people are in the trade in Poland. If you know how to organize your time effectively, talk to people and sometimes work more than the standard eight hours, then freelancing is enough to earn a living. The important thing is to be consistent and up to date.</p>
<p><a href="http://www.substancja.pl/">Konrad Wysokiński</a>: I’ll quote part of a conversation I had with a colleague, a designer. I asked him once, “Can you earn a living from freelancing?” He said, “It depends on your standard of living.” You can get by, of course, but you probably won’t make a fortune. I often get the impression that in Poland this type of work is considered a craft and is not treated with respect like other “professional” work. We are very far from the image of the Web designer you see in Hollywood movies, who has a five million dollar house with a swimming pool, has his own agent and who is the top Web designer for the most famous brands.</p>
<p><a href="http://www.substancja.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/wysokinski.jpg" alt="Wysokinski in Showcase Of Web Design In Poland" width="500" height="329" /></a><br />
<em>Konrad Wysokiński</em></p>
<p><a href="http://touchdesign.pl/">Mateusz Jakobsze</a>: It’s not much different from what you see in other countries. We have many arenas where graphic designers can display their work, like themed blogs and Internet forums. The majority of creative agencies and independent clients look for employees that way.</p>
<p>Freelance Web designing has been developing in Poland: about a quarter of agencies outsource on a regular basis, and more than a third use freelancers for selected projects. So, there are opportunities to work on different brands for different companies, which is good for both present and future freelancers.</p>
<p>Special workplaces and offices have gradually emerged where there is no boss and all the workers are freelancers. We have such a place in Poznań. It’s a great idea to have freelancers from different professions gathered in one place. I hope for more initiatives like that.</p>
<p><strong>Question: What inspires you? Do you approach every design differently and enthusiastically, or is it sometimes like mass production?</strong></p>
<p><a href="http://designin.pl/">Jan Stańko</a>: Mass production kills creativity, so I avoid it as much as I can. I prefer to do less work better. Then you can show a portfolio that you are really proud of. It’s the only way I work.</p>
<p>Honestly, my inspiration comes from the work of other designers, both from Poland and abroad. Behance.net is a really amazing source, vast and rich. I don’t have a specific example, but this ocean of artistic ideas fuels creativity and prepares you to bring your own ideas to life. Then it just flows.</p>
<p><a href="http://www.nastaly.com/">Rafał Nastały</a>: When I have the freedom of choice and some time on my hands, I try to make something original that appeals to both me and the client. But it sometimes happens that there are several tasks and the deadline is “yesterday.” In this situation, I bear down and work like a robot while trying to maintain a high quality of work. I get inspiration from the Internet. I regularly visit websites devoted strictly to Web design like FWA, DesignFollow and obviously Smashing Magazine. I also visit DesignYouTrust, FormFiftyFive and FFFFound. You can find plenty of great art and designs from many fields.</p>
<p><a href="http://www.biernawski.com/">Piotr Biernawski</a>: Sometimes a free mind, a break from work and lack of inspiration are the best sources of inspiration! I work most effectively after a two-week break in which I do absolutely nothing — but such breaks happen only once in a while. This is why a freelancer needs to be psychologically strong, otherwise getting depressed is easy.</p>
<p>As for inspiration, I have bookmarked several links. They are mostly Polish productions, and I visit them now and then. Given how much I work, this may sound strange, but one’s attitude to design makes a difference. Unfortunately for me, the majority of my recent projects were due “yesterday.” A client pays for fast work, and standards have to be met. There isn’t always a sense of achievement when you work quickly, but as long as the client is satisfied, I’m happy as well. Some interesting projects require more involvement. Usually these are not assigned by agencies but by independent clients who come directly to me. Maybe this tells us something?</p>
<p><a href="http://www.reserved.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/reserved1.jpg" alt="Reserved1 in Showcase Of Web Design In Poland" width="500" height="329" /></a><br />
<em><a href="http://www.reserved.pl/">Reserved.pl</a></em></p>
<p><a href="http://www.ghentelmen.com/">Łukasz Bronisz</a>: I treat every design individually and use new ideas and techniques. When I start a project, I try to get a sense of what the client likes, but I also aim to be satisfied with my own work. It’s nice when everything goes smoothly and both the client and agency like your idea. Working with individuals can be tough; sometimes they just don’t appreciate your effort, which can compromise the result. This is typical both in Poland and abroad — at least, that has been my experience.</p>
<p><a href="http://www.substancja.pl/">Konrad Wysokiński</a>: I get inspiration from all around. I sometimes do corporate identity design, which can inspire me. Naturally, I watch the best people at work and keep up with the trends. I’m a fan of grunge design, but very rarely can I use it. Every project is a new challenge for me, so I give my heart and soul to each and every design. I’m never convinced by lines like, “Do it quicker and simpler for a lower price.” I believe it’s impossible to make something look professional without taking a professional approach.</p>
<p><a href="http://www.strzyg.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/strzyg.jpg" alt="Strzyg in Showcase Of Web Design In Poland" width="500" height="329" /></a><br />
<em><a href="http://www.strzyg.com/">Strzyg</a></em></p>
<p><a href="http://touchdesign.pl/">Mateusz Jakobsze</a>: Like every creative job, graphic design requires participation. To keep up to date with all the news in both Web and graphic design, I regularly visit the important portals and blogs devoted to this line of work, be they Polish or international. The crucial ones include Behance, Smashing Magazine, DeviantArt, the FWA and New Web Pic. Additionally, I find reading and browsing books on advertising, typography, designing for the Web (including for portfolios, Flash websites and e-commerce shops) and graphic design useful. It can also be a good way to relax and get away from the digital world to some degree.</p>
<p>The last (but most important) sources of inspiration for me are sleep and having a life outside of work (away from my computer). Socializing with friends and going to parties, cinema, opera and other cultural events renew my energy for creative work.</p>
<p>When it comes to designs, I treat every project differently, but I always try to have a plan, an idea of how to do the project, from beginning to end. I make some sketches, and when know exactly what I want, I get down to work. Every design is a new challenge. I set higher standards for myself every day, and I strive to be the best at what I do.</p>
<h3>Showcase Of Beautiful Web Design From Poland</h3>
<p><a href="http://www.lech.pl/">Lech.pl</a></p>
<p><a href="http://www.lech.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/lech.jpg" alt="Lech in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.teatrwybrzeze.pl/">Teatr Wybrzeże</a></p>
<p><a href="http://www.teatrwybrzeze.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/teatr-wybrzeze.jpg" alt="Teatr-wybrzeze in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.walkmankomiks.pl/">Sony Walkman</a></p>
<p><a href="http://www.walkmankomiks.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/sony-walkman-komiks.jpg" alt="Sony-walkman-komiks in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://pl.nokia.pl/modnanokia/">Modna Nokia</a></p>
<p><a href="http://pl.nokia.pl/modnanokia/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/modna-nokia.jpg" alt="Modna-nokia in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.happymeal.pl/">McDonald’s Happy Meal</a></p>
<p><a href="http://www.happymeal.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/mcdonalds-happy-meal.jpg" alt="Mcdonalds-happy-meal in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.bigstar.pl/">Bigstar</a></p>
<p><a href="http://www.bigstar.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/bigstar-barcelona.jpg" alt="Bigstar-barcelona in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.zakulisami.allegro.pl/">Allegro za kulisami</a></p>
<p><a href="http://www.zakulisami.allegro.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/allegro-zakulisami.jpg" alt="Allegro-zakulisami in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.thetoke.com/">Thetoke</a></p>
<p><a href="http://www.thetoke.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/thetoke.jpg" alt="Thetoke in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.malyglod.pl/">Mały Głód</a></p>
<p><a href="http://www.malyglod.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/malyglod1.jpg" alt="Malyglod1 in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.eureko.pl/">Eureko</a></p>
<p><a href="http://www.eureko.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/eureko.jpg" alt="Eureko in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.greywolf.pl/">Grey Wolf</a></p>
<p><a href="http://www.greywolf.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/grey-wolf.jpg" alt="Grey-wolf in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.carlsbergliverpool.pl/">Carlsberg Liverpool</a></p>
<p><a href="http://www.carlsbergliverpool.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/carlsberg-liverpool.jpg" alt="Carlsberg-liverpool in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://skodayeti.pl/">Skoda Yeti</a></p>
<p><a href="http://skodayeti.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/skoda-yeti.jpg" alt="Skoda-yeti in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.500bydiesel.com/">Fiat 500 Diesel</a></p>
<p><a href="http://www.500bydiesel.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/fiat-diesel.jpg" alt="Fiat-diesel in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://hf3.coca-cola.com/?locale=pl_PL">Happiness Factory</a></p>
<p><a href="http://hf3.coca-cola.com/?locale=pl_PL"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/happiness-factory.jpg" alt="Happiness-factory in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.bestphoto.pl/">Best Photo</a></p>
<p><a href="http://www.bestphoto.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/best-photo.jpg" alt="Best-photo in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.rokkaboy.com/">Rokkaboy</a></p>
<p><a href="http://www.rokkaboy.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/rokkaboy.jpg" alt="Rokkaboy in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.feta.pl/">Festiwal Feta</a></p>
<p><a href="http://www.feta.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/feta.jpg" alt="Feta in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.zubr.pl/">Żubr</a></p>
<p><a href="http://www.zubr.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/zubr.jpg" alt="Zubr in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.okocim.pl/">Okocim</a></p>
<p><a href="http://www.okocim.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/okocim.jpg" alt="Okocim in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.zajacmroku.pl/">Zając Mroku</a></p>
<p><a href="http://www.zajacmroku.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/zajac-mroku.jpg" alt="Zajac-mroku in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.scandium.amica.pl/">Amica Scandium</a></p>
<p><a href="http://www.scandium.amica.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/amica-scandium.jpg" alt="Amica-scandium in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.puchatekkakao.pl/">Kakao Puchatek</a></p>
<p><a href="http://www.puchatekkakao.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/puchatek.jpg" alt="Puchatek in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.kalinowepola.pl/">Kalinowe Pola</a></p>
<p><a href="http://www.kalinowepola.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/kalinowe-pola.jpg" alt="Kalinowe-pola in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.profipartners.pl/">ProfiPartners</a></p>
<p><a href="http://www.profipartners.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/profi-partners.jpg" alt="Profi-partners in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.longermix.kfc.pl/">KFC Longer Mix</a></p>
<p><a href="http://www.longermix.kfc.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/kfc.jpg" alt="Kfc in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.justyna-kowalczyk.pl/">Justyna Kowalczyk</a></p>
<p><a href="http://www.justyna-kowalczyk.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/justyna-kowalczyk.jpg" alt="Justyna-kowalczyk in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://bn.org.pl/">Biblioteka Narodowa</a></p>
<p><a href="http://bn.org.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/bn.jpg" alt="Bn in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.nowyteatr.org/">Nowy Teatr</a></p>
<p><a href="http://www.nowyteatr.org/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/nowy-teatr.jpg" alt="Nowy-teatr in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.mediations.pl/2008/">Mediations Biennale</a></p>
<p><a href="http://www.mediations.pl/2008/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/mediations.jpg" alt="Mediations in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.masterm.pl/">Masterm</a></p>
<p><a href="http://www.masterm.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/04/masterm.jpg" alt="Masterm in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.commonwealth.pl/">Common Wealth</a></p>
<p><a href="http://www.commonwealth.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/commonwealth.jpg" alt="Commonwealth in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.pawellenar.pl/">Pawel Lenar</a></p>
<p><a href="http://www.pawellenar.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/pawel-lenar.jpg" alt="Pawel-lenar in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.fotokody.pl/">Fotokody</a></p>
<p><a href="http://www.fotokody.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/fotokody.jpg" alt="Fotokody in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.e-greenline.pl/">Greenline</a></p>
<p><a href="http://www.e-greenline.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/greenline.jpg" alt="Greenline in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.gellwe.pl/">Gellwe</a></p>
<p><a href="http://www.gellwe.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/gellwe.jpg" alt="Gellwe in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.horalky.com.pl/">Horalky</a></p>
<p><a href="http://www.horalky.com.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/horalky.jpg" alt="Horalky in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://fajnechlopaki.com/">Fajne Chłopaki</a></p>
<p><a href="http://fajnechlopaki.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/04/fajne-chlopaki.jpg" alt="Fajne-chlopaki in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<h3>Showcase Of Interactive And Creative Agencies In Poland</h3>
<p><a href="http://www.click5.pl/">Click5</a></p>
<p><a href="http://www.click5.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/click5.jpg" alt="Click5 in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.cookie.pl/">Cookie</a></p>
<p><a href="http://www.cookie.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/cookie.jpg" alt="Cookie in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.os3.pl/">OS3</a></p>
<p><a href="http://www.os3.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/os3.jpg" alt="Os3 in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.arsthanea.com/">Ars Thanea</a></p>
<p><a href="http://www.arsthanea.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/ars-thanea.jpg" alt="Ars-thanea in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.artegence.pl/">Artegence</a></p>
<p><a href="http://www.artegence.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/artegence.jpg" alt="Artegence in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.adv.pl/">Adv</a></p>
<p><a href="http://www.adv.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/adv.jpg" alt="Adv in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.huncwot.com/">Huncwot</a></p>
<p><a href="http://www.huncwot.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/huncwot.jpg" alt="Huncwot in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.opcom.pl/">Opcom</a></p>
<p><a href="http://www.opcom.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/opcom.jpg" alt="Opcom in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.bbcg.pl/">Blueberry</a></p>
<p><a href="http://www.bbcg.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/blue-berry-pixel.jpg" alt="Blue-berry-pixel in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.180hb.com/">180 Heartbeats</a></p>
<p><a href="http://www.180hb.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/180-heartbeats.jpg" alt="180-heartbeats in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.goforchange.pl/">Change Connections</a></p>
<p><a href="http://www.goforchange.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/change-connections.jpg" alt="Change-connections in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.hipopotamstudio.pl/">Hipopotam Studio</a></p>
<p><a href="http://www.hipopotamstudio.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/hipopotam-studio.jpg" alt="Hipopotam-studio in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.goldensubmarine.com/">Golden Submarine</a></p>
<p><a href="http://www.goldensubmarine.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/golden-submarine.jpg" alt="Golden-submarine in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.sointeractive.pl/">So Interactive</a></p>
<p><a href="http://www.sointeractive.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/sointeractive.jpg" alt="Sointeractive in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.honki.pl/">Honki</a></p>
<p><a href="http://www.honki.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/honki.jpg" alt="Honki in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.pro-creation.pl/">Pro-Creation</a></p>
<p><a href="http://www.pro-creation.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/pro-creation.jpg" alt="Pro-creation in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.hypermedia.pl/">Hypermedia</a></p>
<p><a href="http://www.hypermedia.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/hypermedia.jpg" alt="Hypermedia in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.artflash.pl/">Art Flash</a></p>
<p><a href="http://www.artflash.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/art-flash.jpg" alt="Art-flash in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.chigodesign.com/">Chigo Design</a></p>
<p><a href="http://www.chigodesign.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/chigo.jpg" alt="Chigo in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.eura7.com/">Eura 7</a></p>
<p><a href="http://www.eura7.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/eura-7.jpg" alt="Eura-7 in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.infinitygroup.pl/">Infinity Group</a></p>
<p><a href="http://www.infinitygroup.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/infinity-group.jpg" alt="Infinity-group in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.insignia.pl/">Insignia</a></p>
<p><a href="http://www.insignia.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/insignia.jpg" alt="Insignia in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.netizens.pl/">Netizens</a></p>
<p><a href="http://www.netizens.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/netizens.jpg" alt="Netizens in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.studiosynergia.pl/">Studio Synergia</a></p>
<p><a href="http://www.studiosynergia.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/studio-synergia.jpg" alt="Studio-synergia in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.xoestudio.com/">Xoe Studio</a></p>
<p><a href="http://www.xoestudio.com/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/xoe-studio.jpg" alt="Xoe-studio in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.mediaambassador.pl/">Media Ambassador</a></p>
<p><a href="http://www.mediaambassador.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/media-ambassador.jpg" alt="Media-ambassador in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<p><a href="http://www.hotmind.pl/">Hotmind</a></p>
<p><a href="http://www.hotmind.pl/"><img src="http://media.smashingmagazine.com/cdn_smash/wp-content/uploads/2010/02/hot-mind.jpg" alt="Hot-mind in Showcase Of Web Design In Poland" width="500" height="329" /></a></p>
<blockquote>
<div><img src="http://www.gravatar.com/avatar/4bddddb680e7e1d6995f1fdef7ecad39?s=78&amp;d=http%3A%2F%2Fwww.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536%3Fs%3D78&amp;r=G" alt="" width="78" height="78" /></div>
<p><a title="Posts by Przemek Matylla" href="http://www.smashingmagazine.com/author/przemek-matylla/">Przemek Matylla</a></p>
<p>Yep, that&#8217;s me! I&#8217;m a web-developer, interface specialist at <a href="http://www.allegro.pl/">Allegro</a>, one of the largest online marketplaces in Central and Eastern Europe. I am in love with CSS, JS and AS3, ad basically everything front-end related. You can visit my <a href="http://www.matylla.pl/blog">personal blog</a> or follow me on <a href="http://www.twitter.com/matylla">Twitter</a>.</p></blockquote>
<p><!-- PHP 5.x --></p>


<p>Related posts:<ol><li><a href='http://bulldoggie.cn/blog/2009/12/28/web-design-trends-for-2009/' rel='bookmark' title='Web Design Trends For 2009'>Web Design Trends For 2009</a></li>
<li><a href='http://bulldoggie.cn/blog/2010/02/12/27-places-to-find-web-design-jobs/' rel='bookmark' title='27 Places to Find Web Design Jobs'>27 Places to Find Web Design Jobs</a></li>
<li><a href='http://bulldoggie.cn/blog/2009/12/28/more-web-design-trends-for-2009/' rel='bookmark' title='More Web Design Trends For 2009(layout)'>More Web Design Trends For 2009(layout)</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://bulldoggie.cn/blog/2010/07/17/web-design-in-poland/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Create Snook-Style Navigation Using MooTools</title>
		<link>http://bulldoggie.cn/blog/2010/06/26/create-snook-style-navigation-using-mootools/</link>
		<comments>http://bulldoggie.cn/blog/2010/06/26/create-snook-style-navigation-using-mootools/#comments</comments>
		<pubDate>Sat, 26 Jun 2010 04:31:27 +0000</pubDate>
		<dc:creator>classiclori</dc:creator>
				<category><![CDATA[JQuery]]></category>
		<category><![CDATA[webtoday]]></category>

		<guid isPermaLink="false">http://bulldoggie.cn/blog/?p=443</guid>
		<description><![CDATA[<p><a href="http://snook.ca/">Jonathan Snook</a> debuted a <a href="http://snook.ca/archives/javascript/jquery-bg-image-animations/">great tutorial</a> last September detailing how you can use an image and a few jQuery techniques to create a slick mouseover effect. I revisited his article and ported its two most impressive effects to MooTools.</p><p><a href="http://davidwalsh.name/dw-content/snook-animation.php">View Demo</a></p><p><h2>The Images</h2></p><p> </p><p> <span class='read-more'><a href='http://bulldoggie.cn/blog/2010/06/26/create-snook-style-navigation-using-mootools/'>[Read More…]</a></span></p><div class="clear-float"></div>
		]]></description>
			<content:encoded><![CDATA[<p><a href="http://snook.ca/">Jonathan Snook</a> debuted a <a href="http://snook.ca/archives/javascript/jquery-bg-image-animations/">great tutorial</a> last September detailing how you can use an image and a few jQuery techniques to create a slick mouseover effect. I revisited his article and ported its two most impressive effects to MooTools.</p>
<div><a href="http://davidwalsh.name/dw-content/snook-animation.php">View Demo</a></div>
<h2>The Images</h2>
<p><img src="http://davidwalsh.name/dw-content/snook-animation-bg.jpg" alt="Image 1" /> <img src="http://davidwalsh.name/dw-content/snook-animation-bg2.jpg" alt="Image 1" /></p>
<p><span id="more-443"></span></p>
<p>These are the same images used in Snook’s article.</p>
<h2>The XHTML</h2>
<pre>&lt;h2&gt;Example 0: No Script&lt;/h2&gt;
&lt;ul id="noscript"&gt;
	&lt;li&gt;&lt;a href="#"&gt;Home&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="#"&gt;About&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="#"&gt;Contact&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Example A: Top down&lt;/h2&gt;
&lt;ul id="a"&gt;
	&lt;li&gt;&lt;a href="#"&gt;Home&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="#"&gt;About&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="#"&gt;Contact&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Example B: Right left&lt;/h2&gt;
&lt;ul id="b"&gt;
	&lt;li&gt;&lt;a href="#"&gt;Home&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="#"&gt;About&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="#"&gt;Contact&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</pre>
<div id="Lighter_1277525704216"><a id="copy0" title="Click here to copy this code to the clipboard" href="javascript:;">Click here to copy this code to the clipboard</a><a title="Click here to add this snippet to Coda" href="http://davidwalsh.name/snook-navigation-mootools#">Click here to add this snippet to Coda</a><a title="Click here to add this snippet to TextMate" href="http://davidwalsh.name/snook-navigation-mootools#">Click here to add this snippet to TextMate</a><a title="Get the raw code" href="http://davidwalsh.name/snook-navigation-mootools#">Get the raw code</a></div>
<div></div>
<div id="Lighter_1277525704216">
<div><span style="color: #993366;"><span style="text-decoration: underline;">1&lt;h2&gt;Example 0: No Script&lt;/h2&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">2&lt;ul id=&#8221;noscript&#8221;&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">3  &lt;li&gt;&lt;a href=&#8221;#&#8221;&gt;Home&lt;/a&gt;&lt;/li&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">4  &lt;li&gt;&lt;a href=&#8221;#&#8221;&gt;About&lt;/a&gt;&lt;/li&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">5  &lt;li&gt;&lt;a href=&#8221;#&#8221;&gt;Contact&lt;/a&gt;&lt;/li&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">6&lt;/ul&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">7</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">8&lt;h2&gt;Example A: Top down&lt;/h2&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">9&lt;ul id=&#8221;a&#8221;&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">10  &lt;li&gt;&lt;a href=&#8221;#&#8221;&gt;Home&lt;/a&gt;&lt;/li&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">11  &lt;li&gt;&lt;a href=&#8221;#&#8221;&gt;About&lt;/a&gt;&lt;/li&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">12  &lt;li&gt;&lt;a href=&#8221;#&#8221;&gt;Contact&lt;/a&gt;&lt;/li&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">13&lt;/ul&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">14</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">15&lt;h2&gt;Example B: Right left&lt;/h2&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">16&lt;ul id=&#8221;b&#8221;&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">17  &lt;li&gt;&lt;a href=&#8221;#&#8221;&gt;Home&lt;/a&gt;&lt;/li&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">18  &lt;li&gt;&lt;a href=&#8221;#&#8221;&gt;About&lt;/a&gt;&lt;/li&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">19  &lt;li&gt;&lt;a href=&#8221;#&#8221;&gt;Contact&lt;/a&gt;&lt;/li&gt;</span></span></div>
<div><span style="color: #993366;"><span style="text-decoration: underline;">20&lt;/ul&gt;</span></span></div>
</div>
<p>Three menus.  The first will be a simple CSS-only mouseover, the other two will be varying MooTools versions.</p>
<h2>The CSS</h2>
<pre><span style="color: #993366;">ul { list-style:none; margin:0; padding:0; }
li { float:left; width:100px; margin:0; padding:0; text-align:center; }
li a { display:block; padding:5px 10px; height:100%; color:#fff; text-decoration:none; border-right:1px solid #fff; }
li a { background:url(snook-animation-bg2.jpg) repeat 0 0; }
a:hover, a:focus, a:active { background-position:-150px 0; }
#a a { background:url(snook-animation-bg.jpg) repeat; background-position:-20px 35px; }
#b a { background:url(snook-animation-bg2.jpg) repeat; background-position:0 0; }
</span></pre>
<div id="Lighter_1277525704416"><span style="color: #993366;"><a id="copy1" title="Click here to copy this code to the clipboard" href="javascript:;">Click here to copy this code to the clipboard</a><a title="Click here to add this snippet to Coda" href="http://davidwalsh.name/snook-navigation-mootools#">Click here to add this snippet to Coda</a><a title="Click here to add this snippet to TextMate" href="http://davidwalsh.name/snook-navigation-mootools#">Click here to add this snippet to TextMate</a><a title="Get the raw code" href="http://davidwalsh.name/snook-navigation-mootools#">Get the raw code</a></span></p>
<div><span style="color: #993366;">1ul { list-style:none; margin:0; padding:0; }</span></div>
<div><span style="color: #993366;">2li { float:left; width:100px; margin:0; padding:0; text-align:center; }</span></div>
<div><span style="color: #993366;">3li a { display:block; padding:5px 10px; height:100%; color:#fff; text-decoration:none; border-right:1px solid #fff; }</span></div>
<div><span style="color: #993366;">4li a { background:url(snook-animation-bg2.jpg) repeat 0 0; }</span></div>
<div><span style="color: #993366;">5a:hover, a:focus, a:active { background-position:-150px 0; }</span></div>
<div><span style="color: #993366;">6#a a { background:url(snook-animation-bg.jpg) repeat; background-position:-20px 35px; }</span></div>
<div><span style="color: #993366;">7#b a { background:url(snook-animation-bg2.jpg) repeat; background-position:0 0; }</span></div>
</div>
<p>Nothing too notable here.</p>
<h2>The MooTools JavaScript</h2>
<pre><span style="color: #993366;">window.addEvent('domready', function() {
	/* example a:  top down */
	$$('#a a').each(function(el) {
		//fx
		var fx = new Fx.Tween(el,{
			duration: 500,
			link: 'cancel'
		});

		//css &amp; events
		el.setStyle('background-position','-20px 35px').addEvents({
			'mouseenter': function(e) {
				e.stop();
				fx.start('background-position','-20px 94px');
			},
			'mouseleave': function(e) {
				e.stop();
				fx.start('background-position','-20px 35px');
			}
		});
	});

	/* example b:  right left */
	$$('#b a').each(function(el) {
		//css
		var reset = false;
		var fx = new Fx.Tween(el,{
			duration: 500,
			link: 'cancel',
			onComplete:function() {
				if(reset) {
					el.setStyle('background-position','0 0');
				}
			}
		});
		//events
		el.setStyle('background-position','0 0').addEvents({
			'mouseenter': function(e) {
				e.stop();
				fx.start('background-position','-150px 0');
				reset = false;
			},
			'mouseleave': function(e) {
				reset = true;
				fx.start('background-position','-300px 0');
			}
		});
	});

});
</span></pre>
<div id="Lighter_1277525704534"><a id="copy2" title="Click here to copy this code to the clipboard" href="javascript:;">Click here to copy this code to the clipboard</a><a title="Click here to add this snippet to Coda" href="http://davidwalsh.name/snook-navigation-mootools#">Click here to add this snippet to Coda</a><a title="Click here to add this snippet to TextMate" href="http://davidwalsh.name/snook-navigation-mootools#">Click here to add this snippet to TextMate</a><a title="Get the raw code" href="http://davidwalsh.name/snook-navigation-mootools#">Get the raw code</a></p>
<div><span style="color: #993366;">1window.addEvent(&#8216;domready&#8217;, function() {</span></div>
<div><span style="color: #993366;">2  /* example a:  top down */</span></div>
<div><span style="color: #993366;">3  $$(&#8216;#a a&#8217;).each(function(el) {</span></div>
<div><span style="color: #993366;">4    //fx</span></div>
<div><span style="color: #993366;">5    var fx = new Fx.Tween(el,{</span></div>
<div><span style="color: #993366;">6      duration: 500,</span></div>
<div><span style="color: #993366;">7      link: &#8216;cancel&#8217;</span></div>
<div><span style="color: #993366;">8    });</span></div>
<div><span style="color: #993366;">9</span></div>
<div><span style="color: #993366;">10    //css &amp; events</span></div>
<div><span style="color: #993366;">11    el.setStyle(&#8216;background-position&#8217;,'-20px 35px&#8217;).addEvents({</span></div>
<div><span style="color: #993366;">12      &#8216;mouseenter&#8217;: function(e) {</span></div>
<div><span style="color: #993366;">13        e.stop();</span></div>
<div><span style="color: #993366;">14        fx.start(&#8216;background-position&#8217;,'-20px 94px&#8217;);</span></div>
<div><span style="color: #993366;">15      },</span></div>
<div><span style="color: #993366;">16      &#8216;mouseleave&#8217;: function(e) {</span></div>
<div><span style="color: #993366;">17        e.stop();</span></div>
<div><span style="color: #993366;">18        fx.start(&#8216;background-position&#8217;,'-20px 35px&#8217;);</span></div>
<div><span style="color: #993366;">19      }</span></div>
<div><span style="color: #993366;">20    });</span></div>
<div><span style="color: #993366;">21  });</span></div>
<div><span style="color: #993366;">22</span></div>
<div><span style="color: #993366;">23  /* example b:  right left */</span></div>
<div><span style="color: #993366;">24  $$(&#8216;#b a&#8217;).each(function(el) {</span></div>
<div><span style="color: #993366;">25    //css</span></div>
<div><span style="color: #993366;">26    var reset = false;</span></div>
<div><span style="color: #993366;">27    var fx = new Fx.Tween(el,{</span></div>
<div><span style="color: #993366;">28      duration: 500,</span></div>
<div><span style="color: #993366;">29      link: &#8216;cancel&#8217;,</span></div>
<div><span style="color: #993366;">30      onComplete:function() {</span></div>
<div><span style="color: #993366;">31        if(reset) {</span></div>
<div><span style="color: #993366;">32          el.setStyle(&#8216;background-position&#8217;,&#8217;0 0&#8242;);</span></div>
<div><span style="color: #993366;">33        }</span></div>
<div><span style="color: #993366;">34      }</span></div>
<div><span style="color: #993366;">35    });</span></div>
<div><span style="color: #993366;">36    //events</span></div>
<div><span style="color: #993366;">37    el.setStyle(&#8216;background-position&#8217;,&#8217;0 0&#8242;).addEvents({</span></div>
<div><span style="color: #993366;">38      &#8216;mouseenter&#8217;: function(e) {</span></div>
<div><span style="color: #993366;">39        e.stop();</span></div>
<div><span style="color: #993366;">40        fx.start(&#8216;background-position&#8217;,'-150px 0&#8242;);</span></div>
<div><span style="color: #993366;">41        reset = false;</span></div>
<div><span style="color: #993366;">42      },</span></div>
<div><span style="color: #993366;">43      &#8216;mouseleave&#8217;: function(e) {</span></div>
<div><span style="color: #993366;">44        reset = true;</span></div>
<div><span style="color: #993366;">45        fx.start(&#8216;background-position&#8217;,'-300px 0&#8242;);</span></div>
<div><span style="color: #993366;">46      }</span></div>
<div><span style="color: #993366;">47    });</span></div>
<div><span style="color: #993366;">48  });</span></div>
<div><span style="color: #993366;">49</span></div>
<div><span style="color: #993366;">50});</span></div>
</div>
<p>When you mouseover the last two navigation menu links, the background image animates from one spot to another creating a flash-like effect.<!-- PHP 5.x --></p>


<p>Related posts:<ol><li><a href='http://bulldoggie.cn/blog/2009/12/21/easy-to-use-safari-style-jquery-slider-plugin/' rel='bookmark' title='Easy to Use Safari Style jQuery Slider Plugin'>Easy to Use Safari Style jQuery Slider Plugin</a></li>
<li><a href='http://bulldoggie.cn/blog/2010/03/17/create-a-professional-web-2-0-layout/' rel='bookmark' title='Create a Professional Web 2.0 Layout'>Create a Professional Web 2.0 Layout</a></li>
<li><a href='http://bulldoggie.cn/blog/2010/02/01/create-your-own-actionscript-3-0-pixel-explosion-effect/' rel='bookmark' title='Create Your Own ActionScript 3.0 Pixel Explosion Effect'>Create Your Own ActionScript 3.0 Pixel Explosion Effect</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://bulldoggie.cn/blog/2010/06/26/create-snook-style-navigation-using-mootools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Lightbox + PhotoNav = LightNav</title>
		<link>http://bulldoggie.cn/blog/2010/06/26/lightbox-photonav-lightnav/</link>
		<comments>http://bulldoggie.cn/blog/2010/06/26/lightbox-photonav-lightnav/#comments</comments>
		<pubDate>Sat, 26 Jun 2010 03:54:52 +0000</pubDate>
		<dc:creator>classiclori</dc:creator>
				<category><![CDATA[tools]]></category>
		<category><![CDATA[webtoday]]></category>

		<guid isPermaLink="false">http://bulldoggie.cn/blog/?p=436</guid>
		<description><![CDATA[<p>If you’ve been around the web for a while, you might have heard of <a href="http://www.huddletogether.com/projects/lightbox2/">Lightbox</a>. And if you used it, you might also know the limitations.</p><p>One of those limitations is of course the fact that an image wider than your screen goes out of bounds. Very annoying! And it creates ugly scrolbars.</p><p> <span class='read-more'><a href='http://bulldoggie.cn/blog/2010/06/26/lightbox-photonav-lightnav/'>[Read More…]</a></span></p><div class="clear-float"></div>
		]]></description>
			<content:encoded><![CDATA[<p>If you’ve been around the web for a while, you might have heard of <a href="http://www.huddletogether.com/projects/lightbox2/">Lightbox</a>. And if you used it, you might also know the limitations.</p>
<p>One of those limitations is of course the fact that an image wider than your screen goes out of bounds. Very annoying! And it creates ugly scrolbars.</p>
<p><span id="more-436"></span></p>
<p>As you might know, I have created a <a href="http://gayadesign.nl/post/4/">Panoramic Photoviewer in Javascript</a> to fix the problem of images going out of bounds. And I thought to myself: “Why not try and implement PhotoNav on top of Lightbox?”. With this, even super large images would be viewable.</p>
<p>I created LightNav for this. It runs along Lightbox without changing the script, so you can always update Lightbox if needed.</p>
<div><a href="http://www.gayadesign.com/diy/lightbox-photonav-lightnav/"><img title="lightnav" src="http://www.gayadesign.com/wp-content/uploads/2009/03/lightnav.jpg" alt="lightnav" width="532" height="354" /></a></div>
<p><a href="http://www.gayadesign.com/scripts/lightnav/lightnav.zip">Download<br />
<em>LightNav zip-archive</em></a> <a href="http://www.gayadesign.com/scripts/lightnav/">Example<br />
<em>Open the LightNav examples</em></a></p>
<p>The <em>example page</em> is located here:<br />
<a href="http://www.gayadesign.com/scripts/lightnav/">http://www.gayadesign.com/scripts/lightnav/</a></p>
<p>And the <em>archive is downloadable</em> here:<br />
<a href="http://www.gayadesign.com/scripts/lightnav/lightnav.zip">http://www.gayadesign.com/scripts/lightnav/lightnav.zip</a></p>
<p>Using LightNav is easy! I’ll tell you what you need to do in this step-by-step guide:</p>
<p><strong>1. Download Lightbox and upload to your webpage.</strong></p>
<p>Go to the Lightbox project page and download the zip: <a href="http://www.huddletogether.com/projects/lightbox2/#download">http://www.huddletogether.com/projects/lightbox2/#download</a></p>
<p>The files from the zip we are going to need are: <strong>lightbox.js</strong>, <strong>lightbox.css</strong> and the images in the <strong>images</strong> folder.</p>
<p>For this installation, we <strong>don’t need</strong> the prototype.js and scriptaculous.js file from this zip.</p>
<p>Now upload the files to your server. Check the <strong>lightbox.js file</strong> in the top section for the image paths. These settings are on line 49 and line 50. They have to be set correctly to get a good output on your page.</p>
<p><strong>2. Download and use Scriptaculous.</strong></p>
<p>Go to <a href="http://script.aculo.us/downloads">http://script.aculo.us/downloads</a> and download the latest version of <strong>scriptaculous</strong>.</p>
<p>Upload the files to your server.</p>
<p>Now it’s time to make use of Lightbox and Scriptaculous on your webpage by placing this code in the head section of your webpage:</p>
<div id="highlighter_576960">
<div>
<div><a title="view source" href="http://www.gayadesign.com/diy/lightbox-photonav-lightnav/#viewSource">view source</a></p>
<div><object id="highlighter_576960_clipboard" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="16" height="16" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="flashvars" value="highlighterId=highlighter_576960" /><param name="src" value="http://www.gayadesign.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter/scripts/clipboard.swf" /><param name="wmode" value="transparent" /><embed id="highlighter_576960_clipboard" type="application/x-shockwave-flash" width="16" height="16" src="http://www.gayadesign.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter/scripts/clipboard.swf" wmode="transparent" flashvars="highlighterId=highlighter_576960"></embed></object></div>
<p><a title="print" href="http://www.gayadesign.com/diy/lightbox-photonav-lightnav/#printSource">print</a><a title="?" href="http://www.gayadesign.com/diy/lightbox-photonav-lightnav/#about">?</a></p>
</div>
</div>
<div>
<div>
<table>
<tbody>
<tr>
<td><code>1</code></td>
<td><code>&lt;</code><code>script</code> <code>src</code><code>=</code><code>"js/prototype.js"</code> <code>type</code><code>=</code><code>"text/javascript"</code><code>&gt;&lt;/</code><code>script</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>2</code></td>
<td><code>&lt;</code><code>script</code> <code>src</code><code>=</code><code>"js/scriptaculous.js"</code> <code>type</code><code>=</code><code>"text/javascript"</code><code>&gt;&lt;/</code><code>script</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>3</code></td>
<td><code>&lt;</code><code>script</code> <code>src</code><code>=</code><code>"js/lightbox.js"</code> <code>type</code><code>=</code><code>"text/javascript"</code><code>&gt;&lt;/</code><code>script</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>4</code></td>
<td><code>&lt;</code><code>link</code> <code>href</code><code>=</code><code>"css/lightbox.css"</code> <code>rel</code><code>=</code><code>"stylesheet"</code> <code>type</code><code>=</code><code>"text/css"</code> <code>media</code><code>=</code><code>"screen"</code> <code>/&gt;</code></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<p><strong>Fix the paths</strong> to the files as they are on your server. Now you have included the technology which will make Lightbox work. Now it’s time to include <a href="http://gayadesign.nl/post/7/">LightNav</a> to upgrade Lightbox!</p>
<p><strong>3. Download LightNav and use with Lightbox.</strong></p>
<p><strong>Download</strong> LightNav here: <a href="http://www.gayadesign.com/scripts/lightnav/lightnav.zip">http://www.gayadesign.com/scripts/lightnav/lightnav.zip</a></p>
<p><strong>Upload </strong>the contents to your server.</p>
<p>Now place the following code in the head section of your page (<strong>under the previous tags!</strong>)</p>
<div id="highlighter_530744">
<div>
<div><a title="view source" href="http://www.gayadesign.com/diy/lightbox-photonav-lightnav/#viewSource">view source</a></p>
<div><object id="highlighter_530744_clipboard" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="16" height="16" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="flashvars" value="highlighterId=highlighter_530744" /><param name="src" value="http://www.gayadesign.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter/scripts/clipboard.swf" /><param name="wmode" value="transparent" /><embed id="highlighter_530744_clipboard" type="application/x-shockwave-flash" width="16" height="16" src="http://www.gayadesign.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter/scripts/clipboard.swf" wmode="transparent" flashvars="highlighterId=highlighter_530744"></embed></object></div>
<p><a title="print" href="http://www.gayadesign.com/diy/lightbox-photonav-lightnav/#printSource">print</a><a title="?" href="http://www.gayadesign.com/diy/lightbox-photonav-lightnav/#about">?</a></p>
</div>
</div>
<div>
<div>
<table>
<tbody>
<tr>
<td><code>1</code></td>
<td><code>&lt;</code><code>script</code> <code>src</code><code>=</code><code>"js/lightnav.js"</code> <code>type</code><code>=</code><code>"text/javascript"</code><code>&gt;&lt;/</code><code>script</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>2</code></td>
<td><code>&lt;</code><code>script</code> <code>src</code><code>=</code><code>"js/photonav.js"</code> <code>type</code><code>=</code><code>"text/javascript"</code><code>&gt;&lt;/</code><code>script</code><code>&gt;</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>3</code></td>
<td></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>4</code></td>
<td><code>&lt;</code><code>link</code> <code>href</code><code>=</code><code>'css/photonav.css'</code> <code>rel</code><code>=</code><code>'stylesheet'</code> <code>type</code><code>=</code><code>'text/css'</code> <code>/&gt;</code></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<p>LightNav will overwrite some functionality of Lightbox and make use of <a href="http://gayadesign.nl/post/4/">PhotoNav</a> to create a navigation feature.</p>
<p>You are basically done now! But if you can configure LightNav to your needs in the following part of the lightnav.js file:</p>
<div id="highlighter_45220">
<div>
<div><a title="view source" href="http://www.gayadesign.com/diy/lightbox-photonav-lightnav/#viewSource">view source</a></p>
<div><object id="highlighter_45220_clipboard" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="16" height="16" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="flashvars" value="highlighterId=highlighter_45220" /><param name="src" value="http://www.gayadesign.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter/scripts/clipboard.swf" /><param name="wmode" value="transparent" /><embed id="highlighter_45220_clipboard" type="application/x-shockwave-flash" width="16" height="16" src="http://www.gayadesign.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter/scripts/clipboard.swf" wmode="transparent" flashvars="highlighterId=highlighter_45220"></embed></object></div>
<p><a title="print" href="http://www.gayadesign.com/diy/lightbox-photonav-lightnav/#printSource">print</a><a title="?" href="http://www.gayadesign.com/diy/lightbox-photonav-lightnav/#about">?</a></p>
</div>
</div>
<div>
<div>
<table>
<tbody>
<tr>
<td><code>1</code></td>
<td><code>//you can adjust this to your needs.</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>2</code></td>
<td><code>var</code> <code>LightNavOptions = {</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>3</code></td>
<td><code> </code><code>maxWidth: 800,</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>4</code></td>
<td><code> </code><code>maxHeight: 600</code></td>
</tr>
</tbody>
</table>
</div>
<div>
<table>
<tbody>
<tr>
<td><code>5</code></td>
<td><code>}</code></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<p>The <strong>maxWidth </strong>and <strong>maxHeight </strong>give the maximum width and height (in pixels) of the LightBox window, making it impossible to get bigger than that.<br />
If you set these variables to <strong>0</strong> LightNav will create a width and height according to the browse window of the user, which will also fix the out of bounds problem!</p>
<p>I hope I helped some people with this. <a href="http://feeds2.feedburner.com/GayaDesign">Follow my feed</a> if you wish to see more Javascript tweaks.</p>
<p>Happy tweaking your Lightbox!<!-- PHP 5.x --></p>


<p>Related posts:<ol><li><a href='http://bulldoggie.cn/blog/2009/12/26/jquery-popeye-%e2%80%93-an-inline-lightbox-alternative/' rel='bookmark' title='jQuery.popeye – an inline lightbox alternative'>jQuery.popeye – an inline lightbox alternative</a></li>
<li><a href='http://bulldoggie.cn/blog/2010/03/14/modal-windows-in-modern-web-design/' rel='bookmark' title='Modal Windows In Modern Web Design'>Modal Windows In Modern Web Design</a></li>
<li><a href='http://bulldoggie.cn/blog/2009/12/20/mollify-%e2%80%93-web-file-manager-hosted-in-your-web-server/' rel='bookmark' title='Mollify – Web File Manager Hosted in Your Web Server'>Mollify – Web File Manager Hosted in Your Web Server</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://bulldoggie.cn/blog/2010/06/26/lightbox-photonav-lightnav/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bringing the Magazine to the Web</title>
		<link>http://bulldoggie.cn/blog/2010/06/26/bringing-the-magazine-to-the-web/</link>
		<comments>http://bulldoggie.cn/blog/2010/06/26/bringing-the-magazine-to-the-web/#comments</comments>
		<pubDate>Sat, 26 Jun 2010 03:08:27 +0000</pubDate>
		<dc:creator>classiclori</dc:creator>
				<category><![CDATA[webtoday]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://bulldoggie.cn/blog/?p=433</guid>
		<description><![CDATA[<p>The rise of blogs on the web has brought a quick and easy way for anyone to publish their thoughts online without having to get down and dirty with HTML. Just write your content, hit ‘Publish,’ and your thoughts are instantly available for the masses to read.</p><p>For all the good that blogs have done, they’ve made the internet look predictable when compared to articles printed in a magazine which look completely unique, each with their own art style and layout. As Greg Storey pointed out <a href="http://www.airbagindustries.com/archives/airbag/boxes.php">in a blog post</a> from 2006, “before there were blogs we had websites. Beautiful, random websites that felt more like a zine – one page looking nothing like the one before or after it”.</p><p>Most larger blogs may have a unique theme, but each blog post looks the same. Most posts we read everyday share the same common layout:</p><p> <span class='read-more'><a href='http://bulldoggie.cn/blog/2010/06/26/bringing-the-magazine-to-the-web/'>[Read More…]</a></span></p><div class="clear-float"></div>
		]]></description>
			<content:encoded><![CDATA[<div>
<p>The rise of blogs on the web has brought a quick and easy way for anyone to publish their thoughts online without having to get down and dirty with HTML. Just write your content, hit ‘Publish,’ and your thoughts are instantly available for the masses to read.</p>
<p>For all the good that blogs have done, they’ve made the internet look <em>predictable</em> when compared to articles printed in a magazine which look completely unique, each with their own art style and layout. As Greg Storey pointed out <a href="http://www.airbagindustries.com/archives/airbag/boxes.php">in a blog post</a> from 2006, “before there were blogs we had websites. Beautiful, random websites that felt more like a zine – one page looking nothing like the one before or after it”.</p>
<p>Most larger blogs may have a unique theme, but each blog post looks the same. Most posts we read everyday share the same common layout:</p>
<p><span id="more-433"></span></p>
<div><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/typical-blog-layout.gif" border="0" alt="" /></div>
<p>In breaking this trend, several bloggers have begun giving each post a unique layout, colour scheme and art style. Their posts look more akin to a magazine article than the typical blog post. The posts stand out from the crowd, like a zebra amongst a field of horses.</p>
<blockquote><p>“Before there were blogs we had websites. Beautiful, random websites that felt more like a zine – one page looking nothing like the one before or after it” – Greg Storey</p></blockquote>
<p>Below is a round-up of forty beautiful looking blog posts from fourteen sites which break out of the mentality that every page on a website should look the same.</p>
<hr />
<h2>1. Gregory Wood</h2>
<div><a href="http://gregorywood.co.uk/journal/top-5-reasons-to-learn-to-dive"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/gregwood-learntodive.jpg" border="0" alt="" /></a></div>
<div><a href="http://gregorywood.co.uk/journal/top-5-spielberg-films"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/gregwood-spielbergfilms.jpg" border="0" alt="" /></a></div>
<div><a href="http://gregorywood.co.uk/journal/top-5-zombie-films"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/gregwood-zombiefilms.jpg" border="0" alt="" /></a></div>
<div><a href="http://gregorywood.co.uk/journal/canada-rocks"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/gregwood-canadarocks.jpg" border="0" alt="" /></a></div>
<hr />
<h2>2. Marcel’s Blogazine</h2>
<div><a href="http://uekermann.com/time_distance"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/marcel-timeanddistance.jpg" border="0" alt="" /></a></div>
<div><a href="http://uekermann.com/listening_trends_2009"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/marcel-lastfm.jpg" border="0" alt="" /></a></div>
<div><a href="http://uekermann.com/37signals_vacation"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/marcel-37signals.jpg" border="0" alt="" /></a></div>
<div><a href="http://uekermann.com/vertical_farming"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/marcel-verticalfarming.jpg" border="0" alt="" /></a></div>
<hr />
<h2>3. Jason Santa Maria</h2>
<div><a href="http://jasonsantamaria.com/articles/what-the-world-needs/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/jsm-whattheworldneeds.jpg" border="0" alt="" /></a></div>
<div><a href="http://jasonsantamaria.com/articles/in-sugar-we-trust/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/jsm-insugarwetrust.jpg" border="0" alt="" /></a></div>
<div><a href="http://jasonsantamaria.com/articles/brain-food/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/jsm-brainfood.jpg" border="0" alt="" /></a></div>
<div><a href="http://jasonsantamaria.com/articles/whats-golden/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/jsm-whatsgolden.jpg" border="0" alt="" /></a></div>
<div><a href="http://jasonsantamaria.com/articles/jackpot/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/jsm-jackpot.jpg" border="0" alt="" /></a></div>
<hr />
<h2>4. PeepCode</h2>
<div><a href="http://blog.peepcode.com/tutorials/2010/what-pythonistas-think-of-ruby"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/peepcode-pythonistasruby.jpg" border="0" alt="" /></a></div>
<div><a href="http://blog.peepcode.com/tutorials/2010/rethinking-rails-3-routes"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/peepcode-rubyroutes.jpg" border="0" alt="" /></a></div>
<div><a href="http://blog.peepcode.com/tutorials/2010/file-navigation-in-text-editors"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/peepcode-texteditors.jpg" border="0" alt="" /></a></div>
<hr />
<h2>5. Danny Garcia</h2>
<div><a href="http://danny-garcia.com/articles/full/6_words"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/dg-6words.jpg" border="0" alt="" /></a></div>
<div><a href="http://danny-garcia.com/articles/full/i_know_its_late_but_lets_go_surfing"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/dg-letsgosurfing.jpg" border="0" alt="" /></a></div>
<div><a href="http://danny-garcia.com/articles/full/goodbye_to_print"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/dg-goodbyeprint.jpg" border="0" alt="" /></a></div>
<hr />
<h2>6. Chris Coyier</h2>
<div><a href="http://chriscoyier.net/2010/01/23/pizza-hut-dominos-quality-timeline/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/cc-pizzahutdominos.jpg" border="0" alt="" /></a></div>
<div><a href="http://chriscoyier.net/2009/12/15/the-safari-challenge/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/cc-safarichallenge.jpg" border="0" alt="" /></a></div>
<hr />
<h2>7. Avoid Contact With Eyes</h2>
<div><a href="http://www.acwe.co.uk/?p=142"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/acwe-backfromthedrawingboard.jpg" border="0" alt="" /></a></div>
<div><a href="http://www.acwe.co.uk/?p=450"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/acwe-zombiemovieposter.jpg" border="0" alt="" /></a></div>
<div><a href="http://www.acwe.co.uk/?p=394"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/acwe-monstermadness.jpg" border="0" alt="" /></a></div>
<hr />
<h2>8. Paddy Donnelly</h2>
<div><a href="http://iampaddy.com/spell/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/iamp-learntospell.jpg" border="0" alt="" /></a></div>
<div><a href="http://iampaddy.com/lifebelow600/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/iamp-lifebelow600px.jpg" border="0" alt="" /></a></div>
<div><a href="http://iampaddy.com/doodling/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/iamp-doodling.jpg" border="0" alt="" /></a></div>
<hr />
<h2>9. iamsteve</h2>
<div><a href="http://iamstevesarticles.tumblr.com/post/405552019/evolutionoftv"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/iams-evolutionoftv.jpg" border="0" alt="" /></a></div>
<div><a href="http://iamstevesarticles.tumblr.com/post/506151416/netflixpluswii"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/iams-netflixwii.jpg" border="0" alt="" /></a></div>
<hr />
<h2>10. Jack Cheng</h2>
<div><a href="http://jackcheng.com/roulette"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/jc-roulette.jpg" border="0" alt="" /></a></div>
<div><a href="http://jackcheng.com/more-fun-at-mjr"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/jc-morefunatmjr.jpg" border="0" alt="" /></a></div>
<div><a href="http://jackcheng.com/30-minutes-a-day"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/jc-30minsaday.jpg" border="0" alt="" /></a></div>
<hr />
<h2>11. Dustin Curtis</h2>
<div><a href="http://dustincurtis.com/clear-war.html"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/dc-theclearwar.jpg" border="0" alt="" /></a></div>
<div><a href="http://dustincurtis.com/how-mr-q-manufactured-emotion.html"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/dc-mrq.jpg" border="0" alt="" /></a></div>
<div><a href="http://dustincurtis.com/a-tour-of-my-brain.html"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/dc-atourofmybrain.jpg" border="0" alt="" /></a></div>
<div><a href="http://dustincurtis.com/to-fasten-your-seatbelt.html"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/dc-fastenyourseatbelt.jpg" border="0" alt="" /></a></div>
<hr />
<h2>12. Metalab Design</h2>
<div><a href="http://www.metalabdesign.com/zappos/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/metalab-zappos.jpg" border="0" alt="" /></a></div>
<hr />
<h2>13. Smashing Magazine</h2>
<div><a href="http://www.smashingmagazine.com/the-death-of-the-blog-post/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/smashingmag-deathoftheboringblogpost.jpg" border="0" alt="" /></a></div>
<hr />
<h2>14. Panic Blog</h2>
<div><a href="http://www.panic.com/blog/2010/03/the-panic-status-board/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/panic-statusboard.jpg" border="0" alt="" /></a></div>
<div><a href="http://www.panic.com/blog/2009/12/on-calendars/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/panic-onceinabluemoon.jpg" border="0" alt="" /></a></div>
<div><a href="http://www.panic.com/blog/2010/04/shipped-it/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/panic-shippedit.jpg" border="0" alt="" /></a></div>
<div><a href="http://www.panic.com/blog/2010/05/vegan-co-op-luncheon/"><img src="http://s3.amazonaws.com/nettuts/724_magazine/images/panic-veganlunch.jpg" border="0" alt="" /></a></div>
</div>
<p><!-- PHP 5.x --></p>


<p>Related posts:<ol><li><a href='http://bulldoggie.cn/blog/2009/12/12/top-50-wordpress-tutorials/' rel='bookmark' title='Top 50 WordPress Tutorials'>Top 50 WordPress Tutorials</a></li>
<li><a href='http://bulldoggie.cn/blog/2010/06/26/post-pic-how-to-get-the-first-image-from-the-post-and-display-it/' rel='bookmark' title='Post Pic How to: Get the first image from the post and display it'>Post Pic How to: Get the first image from the post and display it</a></li>
<li><a href='http://bulldoggie.cn/blog/2009/12/28/more-web-design-trends-for-2009/' rel='bookmark' title='More Web Design Trends For 2009(layout)'>More Web Design Trends For 2009(layout)</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://bulldoggie.cn/blog/2010/06/26/bringing-the-magazine-to-the-web/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

