<?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>Six Revisions &#187; Web Standards</title>
	<atom:link href="http://sixrevisions.com/category/web-standards/feed/" rel="self" type="application/rss+xml" />
	<link>http://sixrevisions.com</link>
	<description></description>
	<lastBuildDate>Fri, 18 May 2012 00:25:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Trying to Navigate Website Navigation</title>
		<link>http://sixrevisions.com/web-standards/trying-navigate-website-navigation/</link>
		<comments>http://sixrevisions.com/web-standards/trying-navigate-website-navigation/#comments</comments>
		<pubDate>Thu, 04 Aug 2011 10:00:44 +0000</pubDate>
		<dc:creator>Jacob Gube</dc:creator>
				<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://sixrevisions.com/?p=5693</guid>
		<description><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=5693&c=1606279503' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=5693&c=1606279503' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br />Let&#8217;s start off with a simple task. Most web users can find the primary navigation on the image below, but take a few moments to see if you can find the secondary navigation. If you had a problem definitively identifying it, you aren&#8217;t alone. Even information architecture (IA) experts like Lou Rosenfeld, Steve Krug, Jesse [...]]]></description>
			<content:encoded><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=5693&c=389303783' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=5693&c=389303783' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br /><p><a href="http://sixrevisions.com/web-standards/trying-navigate-website-navigation/"><img src="http://cdn.sixrevisions.com/0171-01_navigating_website_navigation_thumbnail.jpg" width="550" height="200" alt="" /></a></p>
<p>Let&#8217;s start off with a simple task. Most web users can find the primary navigation on the image below, but take a few moments to see if you can find the secondary navigation.</p>
<p><span id="more-5693"></span></p>
<p><img src="http://cdn.sixrevisions.com/0171-02_mcla_example.jpg" width="550" height="250" /></p>
<p>If you had a problem definitively identifying it, you aren&#8217;t alone. Even information architecture (IA) experts like <a href="http://louisrosenfeld.com/">Lou Rosenfeld</a>, Steve Krug, Jesse James Garrett, and Jakob Nielsen don&#8217;t agree as to what &quot;secondary navigation&quot; is.</p>
<p>When working with website stakeholders, it&#8217;s important to have a clear and consistent shared vocabulary for discussing website navigation and IA. It avoids confusion and mistakes.</p>
<p>In addition, having clearly labeled navigation types to choose from can help people organize the information more easily.</p>
<p>For us professionals, having standardized nomenclature allow us to discuss and explore the subject more easily.</p>
<p>In this article, we&#8217;ll look at the current status of website navigation terminology.</p>
<h3>What Do Experts Agree On?</h3>
<p>Let&#8217;s start with what everyone agrees on. The experts all agree that most sites have some sort of main navigation. This navigation is usually (but not always) consistent across all web pages of the site, so it&#8217;s always there when your site&#8217;s visitors need to access it.</p>
<p>It&#8217;s usually situated where most of your users go to find most of the information they need, and is often presented as a horizontal bar at the top of the layout or as a vertical list of links on the left- or right-hand side of the layout.</p>
<p><img src="http://cdn.sixrevisions.com/0171-07_alistapart_primary_nav.png" width="550" height="345" /></p>
<p>Steve Krug (author of the groundbreaking usability book, <em>Don&#8217;t Make Me Think!</em>) and Jesse James Garrett (who many of you might know as the person who coined the term, &quot;Ajax&quot;) call this <em>global navigation</em>, but most others call this <em>primary navigation</em>.</p>
<p>Both terms make sense to me, and while I&#8217;ve always felt that &quot;primary navigation&quot; is the most logical name to refer to this type of navigation menu, I must concede that &quot;global navigation&quot; may be more descriptive and versatile.</p>
<h3>Secondary and Tertiary Navigation</h3>
<p>In the book, <em><a href="http://www.amazon.com/Information-Architecture-World-Wide-Web/dp/0596527349/ref=sr_1_1?ie=UTF8&amp;qid=1310745023&amp;sr=8-1" target="_blank">Information Architecture for the World Wide Web</a></em>, Peter Morville and Louis Rosenfeld defined <em>secondary navigation</em> as navigation that&#8217;s &quot;subservient to the primary navigation.&quot;</p>
<p>This always made a lot of sense to me, and our company has adopted the primary/secondary/tertiary navigation naming convention. It&#8217;s worked very well for us and is something that most of our clients understand very quickly and easily.</p>
<p><img src="http://cdn.sixrevisions.com/0171-03_australis_flyout_secondary.jpg" width="550" height="273" /><span class="figure-caption">Secondary (and tertiary) navigation are often thought of as &quot;subservient&quot; to primary navigation. This can be visually represented using a flyout navigation or using a left-hand secondary navigation.</span></p>
<p>Not everyone agrees that secondary and tertiary are inherently &quot;subservient&quot; navigation, so I&#8217;d be curious to hear if there&#8217;s an industry-wide agreement on this.</p>
<h3>What About Everything Else?</h3>
<p>While the primary/secondary/tertiary navigation scheme works great for most of the navigation items on your website, it simply doesn&#8217;t work for all of them.</p>
<p>The least controversial of the other common navigation is the <em>footer navigation</em>. Regardless of whether it&#8217;s a mirror of the primary navigation, a whole new navigation, or just some links to auxiliary pages like the site&#8217;s Terms of Service (ToS) page, most people agree to call this the <em>footer</em> or the <em>footer navigation</em>.</p>
<p>The other place where all experts seem to agree on is that navigation items should be clearly labeled based on what their purpose is. Garrett calls additional navigation items <em>courtesy navigation</em>, Krug calls them <em>utilities</em>. Other people call them <em>secondary navigation items</em> but that term tends to fall apart conceptually on larger sites, so I would advise against that.</p>
<p>There&#8217;s also that navigation menu often found at the top-right of many sites. You know, the one with link items like &quot;Login,&quot; &quot;Help&quot;, &quot;Search,&quot; &quot;Contact Us&quot;, etc.?</p>
<p><img src="http://cdn.sixrevisions.com/0171-08_bsa_meta_navigation.jpg" width="550" height="261" /></p>
<p>For this navigation menu, I&#8217;ve always used <em>meta navigation</em> to refer to them. But in talking to other usability experts, that term changes depending on what region you&#8217;re in.</p>
<p><img src="http://cdn.sixrevisions.com/0171-04_microsoft_meta_navigation.jpg" width="550" height="380" /><span class="figure-caption">Meta navigation on <a href="http://www.microsoft.com" target="_blank">Microsoft&#8217;s website</a>.</span></p>
<p>Regardless of what you call these additional navigation items, it&#8217;s important to be flexible and recognize when &quot;standards&quot; don&#8217;t apply. Louis Rosenfeld, who&#8217;s been traveling the world advising people on usability for 15 years now, gives a great example of the importance of flexibility: he says that &quot;in a faceted system (think the <a href="http://www.epicurious.com/" target="_blank">Epicurious</a> recipe database&#8217;s navigation), there is no &#8216;primary&#8217; &#8212; they&#8217;re all equally weighted.&quot;</p>
<p><img src="http://cdn.sixrevisions.com/0171-06_epicurious_ss.jpg" width="550" height="398" /></p>
<p>In fact, most web apps, or websites that deal with managing large subsets of data like <a href="http://www.nytimes.com/">The New York Times</a>, <a href="http://www.amazon.com/" target="_blank">Amazon.com</a>, or <a href="http://www.google.com/" target="_blank">Google</a>, might find that even the primary navigation is hard to pin down.</p>
<p><img src="http://cdn.sixrevisions.com/0171-05_google_search_page.jpg" width="550" height="393" /><span class="figure-caption">Sets of navigation highlighted on a Google search results page.</span></p>
<p>Instead, sites like these are controlled by a collection of panels or blocks which are customized to a user&#8217;s experience. In these cases, the user is less likely to browse through the site versus actively looking for the web pages they need, relying on featured content presented to them based on their site activity and site search for navigating the site.</p>
<h3>What Standards Do You Use?</h3>
<p>With all this different nomenclature flying around the Web, we&#8217;d like to hear back from readers. Do you call it &quot;primary&quot; or &quot;global&quot; navigation? What does &quot;meta navigation&quot; mean to you? How many of the sites you work on have a clearly defined primary navigation? Do you think we could be more effective as designers and developers if we standardized our navigation nomenclature a little more?</p>
<p><em>Share your thoughts and opinions in the comments.</em></p>
<h3>Related Content</h3>
<ul>
<li><a href="http://sixrevisions.com/user-interface/is-it-time-to-rethink-website-navigation/">Is It Time to Rethink Website Navigation?</a></li>
<li><a href="http://sixrevisions.com/user-interface/navigation-design-patterns/">Guide to Website Navigation Design Patterns</a></li>
<li><a href="http://sixrevisions.com/design-showcase-inspiration/50-examples-of-drop-down-navigation-menus-in-web-designs/">50 Examples of Drop-Down Navigation Menus in Web Designs</a></li>
<li><em>Related categories</em>: <a href="http://sixrevisions.com/category/web-standards/">Web Standards</a> and <a href="http://sixrevisions.com/category/user-interface/">User Interface</a></li>
</ul>
<h3>About the Author</h3>
<p class="about-author"><img src="http://cdn.sixrevisions.com/authors/jason_mark_small.jpg" alt="" width="80" height="80" /><span class="author-bio-text"><strong>Jason Mark</strong> is an educator, business owner, and author. His Massachusetts-based firm, <a href="http://www.gravityswitch.com/" title="Gravity Switch">Gravity Switch</a>, continues to be the leader in web, iPhone and iPad development in New England, and Jason keeps their carbon footprint down by bicycling to work year round. Follow him on Twitter @<a href="http://twitter.com/#!/jasonnmark">jasonnmark</a>.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://sixrevisions.com/web-standards/trying-navigate-website-navigation/feed/</wfw:commentRss>
		<slash:comments>24</slash:comments>
		</item>
		<item>
		<title>A Comprehensive Guide Inside Your &lt;head&gt;</title>
		<link>http://sixrevisions.com/web-standards/a-comprehensive-guide-inside-your/</link>
		<comments>http://sixrevisions.com/web-standards/a-comprehensive-guide-inside-your/#comments</comments>
		<pubDate>Tue, 14 Sep 2010 10:30:02 +0000</pubDate>
		<dc:creator>Jacob Gube</dc:creator>
				<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://sixrevisions.com/?p=3980</guid>
		<description><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3980&c=1315535609' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3980&c=1315535609' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br />As web designers and developers, we pay so much attention to what&#8217;s directly on the screen (or in our code) that the &#60;head&#62; of a document and what&#8217;s inside is often considered as an afterthought. While in many cases it&#8217;s true that what appears on the screen is the most important part of a website [...]]]></description>
			<content:encoded><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3980&c=299647504' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3980&c=299647504' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br /><p><a href="http://sixrevisions.com/web-standards/a-comprehensive-guide-inside-your/"><img src="http://images.sixrevisions.com/2010/09/02-13_head_tag_guide.png" width="550" height="200" alt="A Comprehensive Guide Inside Your &lt;head&gt;" /></a></p>
<p>As web designers and developers, we pay so much attention to what&#8217;s directly on the screen (or in our code) that the <code>&lt;head&gt;</code> of a document and what&#8217;s inside is often considered as an afterthought.</p>
<p>While in many cases it&#8217;s true that what appears on the screen is the most important part of a website (the <a href="http://sixrevisions.com/category/content-strategy/" title="Content Strategy category on Six Revisions - sixrevisions.com">content</a> is what people visit a site for), the &quot;thinking code&quot; inside the <code>&lt;head&gt;</code> of our documents plays an important role.</p>
<p>This article will examine exactly what can fit inside a website&#8217;s head.</p>
<p><span id="more-3980"></span></p>
<h3>Mastering the Mind</h3>
<p>The head of an HTML document is a busy area, and while it may not have the range of elements that the <code>&lt;body&gt;</code> can flex, it can actually engineer a range of its own elements to play vital roles in how a site will operate or how it can interoperate with other sites.</p>
<p><img src="http://images.sixrevisions.com/2010/09/02-01_head_code.png" width="550" height="241" /><span class="figure-caption">Depending on the website, there might be plenty going on inside its head.</span></p>
<p>So what are your options and how can they benefit your website? Well there&#8217;s quite a lot actually!</p>
<p>There are ways to add useful metadata into your documents (for search engines and other web robots to find), icons that you can supply web browsers for extra visuals (like favicons or device-specific icons for the iPad/iPhone), ways to allow the syndication of your content, and even stylistic and behavioral references that include external stylesheets and scripts.</p>
<p>In essence, the <code>&lt;head&gt;</code> of our HTML documents give the markup below it extra meaning.</p>
<p><img src="http://images.sixrevisions.com/2010/09/02-02_ie8.png" width="550" height="254" /><span class="figure-caption">Thinking code has many purposes, and not all of it is regulated by an official W3C specification!</span></p>
<h4>Head Elements Gone Rogue</h4>
<p>One thing that is unique to the head of our HTML is that it&#8217;s adoption and usefulness is determined on convention and popularity. Metadata, for example, relies on search engines and social networks to acknowledge and use the data, and link references require browsers to take advantage of them. Some things that can be included inside the head of our documents aren&#8217;t even officially supported by W3C specifications &#8212; such as <code>&lt;meta name=&quot;Googlebot&quot;&gt;</code> that is a proprietary  meta tag for Google&#8217;s spiders  &#8212; but because of the nature of the elements, they are  valid markup.</p>
<h3>Independent Elements</h3>
<p>The first elements we should talk about are those which are independent in the sense that they  just serve a single purpose.</p>
<p>One of these elements is so mission-critical that you are required by HTML standards to include it: the <code>&lt;title&gt;</code> tag.</p>
<p>Below are five of the seven (excluding meta and link, since we will talk about them later) head elements:</p>
<table width="550" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><code>&lt;title&gt;</code></td>
<td>This tag describes your document in the browser&#8217;s title  bar.</td>
</tr>
<tr>
<td><code>&lt;script&gt;</code></td>
<td>This tag allows you to either embed or link to JavaScript  files.</td>
</tr>
<tr>
<td><code>&lt;style&gt;</code></td>
<td>This tag embeds CSS inside the document.</td>
</tr>
<tr>
<td><code>&lt;base&gt;</code></td>
<td>This tag states the base directory of files (for relative  links).</td>
</tr>
<tr>
<td><code>&lt;object&gt;</code></td>
<td>This tag can be used in the HTML head; typically it is  used inside the <code>&lt;body&gt;</code> to include page assets such as Flash  components.</td>
</tr>
</table>
<h4>Example:</h4>
<pre>&lt;title&gt;Six Revisions - Web Development and Design Information&lt;/title&gt;</pre>
<p><img src="http://images.sixrevisions.com/2010/09/02-03_title_tag.png" width="550" height="59" /><span class="figure-caption">A <a href="http://sixrevisions.com/content-strategy/5-common-seo-mistakes-with-web-page-titles/" title="5 Common SEO Mistakes with Web Page Titles - sixrevisions.com">document&#8217;s title should be unique</a> on every page and should adequately describe its content.</span></p>
<p>While having a title in your document is required (if you follow W3C standards), the other tags might be of limited use to you.</p>
<p>For example, external stylesheets (instead of <code>&lt;style&gt;</code> tags) and an htaccess file (as opposed to <code>&lt;base&gt;</code>) are better options for declaring CSS style rules and declaring the base directory.</p>
<h3>Mighty &lt;meta&gt; Tags</h3>
<p>Of all the elements that appear in a document&#8217;s head, none is as ubiquitous as <code>&lt;meta&gt;</code> elements.</p>
<p>These elements  &#8212; while being highly desired for search engine optimization&#8211; are more of a pseudoscience affair, as the influence they have on search engines aren&#8217;t publicly disclosed.</p>
<p>With the exception of the <code>&lt;meta=&quot;http-equiv&quot; content-type=&quot;&quot;&gt;</code> that specifies the document&#8217;s <a href="http://en.wikipedia.org/wiki/MIME">MIME type</a>, they are all optional.</p>
<p><img src="http://images.sixrevisions.com/2010/09/02-04_sample_metatags.png" width="550" height="241" /><span class="figure-caption">Getting the page&#8217;s encoding correct (through content-type) is important.</span></p>
<p><img src="http://images.sixrevisions.com/2010/09/02-05_httv_example.jpg" width="550" height="250" /><span class="figure-caption">IE6 can take advantage of a special http-equiv value called imagetoolbar</span></p>
<p>Below are some examples of <code>http-equiv</code> values:</p>
<table width="550" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><code>&lt;meta http-equiv=&quot;Cache-control&quot;&gt;</code></td>
<td>Gives you greater control over browser caching.</td>
</tr>
<tr>
<td><code>&lt;meta http-equiv=&quot;Content-type&quot;&gt;</code></td>
<td>States the MIME type for <a href="http://en.wikipedia.org/wiki/Web_browser_engine">layout engines</a>.</td>
</tr>
<tr>
<td><code>&lt;meta http-equiv=&quot;Content-language&quot;&gt;</code></td>
<td>Dictates the primary spoken/written language used in the  document.</td>
</tr>
<tr>
<td><code>&lt;meta http-equiv=&quot;Expires&quot;&gt;</code></td>
<td>States the expiration date of the document.</td>
</tr>
<tr>
<td><code>&lt;meta http-equiv=&quot;Imagetoolbar&quot;&gt;</code></td>
<td>Forces IE6 to either disable or enable the image toolbar  on hover.</td>
</tr>
<tr>
<td><code>&lt;meta http-equiv=&quot;Last-modified&quot;&gt;</code></td>
<td>Allows you to specify when the document was last modified.</td>
</tr>
<tr>
<td><code>&lt;meta http-equiv=&quot;MSThemeCompatible&quot;&gt;</code></td>
<td>Disables (or restores) the default theme for form  components in Microsoft Internet Explorer 6 and above.</td>
</tr>
<tr>
<td><code>&lt;meta http-equiv=&quot;Refresh&quot;&gt;</code></td>
<td>Redirects the page at a specified time (web spiders don&#8217;t  like this one).</td>
</tr>
<tr>
<td><code>&lt;meta http-equiv=&quot;X-UA-Compatible&quot;&gt;</code></td>
<td>Microsoft extension to dictate compatibility mode  triggering.</td>
</tr>
</table>
<h4>Example:</h4>
<pre>&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=UTF-8&quot; /&gt;
</pre>
<p>Of course, <code>http-equiv</code> isn&#8217;t the only attribute that can provide useful information. And even though <code>keywords</code> are presumed to be ignored by Google and <code>description</code> is only used to represent <a href="http://en.wikipedia.org/wiki/Search_engine_results_page">SERP</a> listings (not acting as a ranking factor), there are no set standards for what values should be used.</p>
<p><img src="http://images.sixrevisions.com/2010/09/02-06_serp.png" width="550" height="166" /><span class="figure-caption">Search engines like Google can use a <code>&lt;meta description=&quot;&quot;&gt;</code> in its results.</span></p>
<p>Below are a few more types of <code>&lt;meta&gt;</code> tags:</p>
<table width="550" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><code>&lt;meta name=&quot;Abstract&quot; &gt;</code></td>
<td>A quick summary of the main points of the content.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Author&quot; &gt;</code></td>
<td>Who authored the HTML document.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Contact&quot; &gt;</code></td>
<td>An email address, phone number or physical address for the  site.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Copyright&quot; &gt;</code></td>
<td>Copyright information.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Description&quot; &gt;</code></td>
<td>Describes the HTML document.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Designer&quot; &gt;</code></td>
<td>The producer of the site.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Generator&quot; &gt;</code></td>
<td>What was used to generate the HTML document.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Geo.placename&quot; &gt;</code></td>
<td>Indicates the town or city of which the site is regionally  based.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Geo.position&quot; &gt;</code></td>
<td>Gives longitude and latitude (semicolon separated)  position.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Geo.region&quot; &gt;</code></td>
<td>Uses two digit region codes to indicate location (such as  GB).</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Googlebot&quot;&gt;</code></td>
<td>Can tell Google to Noarchive, Nosnippet, Noindex and  Nofollow.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Keywords&quot; &gt;</code></td>
<td>This element lists comma separated words linking to  content.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Language&quot; &gt;</code></td>
<td>States the primary language used within the sites content.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Publisher&quot; &gt;</code></td>
<td>Lists the name and version of the product that built a  site.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Robots&quot; &gt;</code></td>
<td>Replaced by robots.txt, this specifies page by page  indexing.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Subject&quot; &gt;</code></td>
<td>Indicates the subject matter to which the content relates.</td>
</tr>
<tr>
<td><code>&lt;meta name=&quot;Viewport&quot; &gt;</code></td>
<td>Used by Apple devices to indicate the content window size.</td>
</tr>
</table>
<h4>Code Example:</h4>
<pre>&lt;meta name=&quot;description&quot; content=&quot;Six Revisions is a blog that shares useful information about web development and design, dedicated to people who build websites.&quot; /&gt;
</pre>
<p>While it&#8217;s true that meta tags  don&#8217;t have a strict set of standards, conventions have come into existence to help decide which tags and values should be used.</p>
<p>Search engines (who pick what they feel are worth recognizing), social networks (that use the data to categorize a site) and organizations like the DCMI (trying to reduce our confusion) are  responsible for such efforts to help in such situations.</p>
<p><img src="http://images.sixrevisions.com/2010/09/02-07_geotag.png" width="550" height="237" /><span class="figure-caption">Metadata isn&#8217;t a science, but the geographical positioning elements can seem like one.</span></p>
<p>Below is a list of the most widely adopted Dublin core metadata elements:</p>
<table width="550" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><code>DC.Contributor</code></td>
<td>Gives names of individuals who contributed to the  resource.</td>
</tr>
<tr>
<td><code>DC.Coverage</code></td>
<td>The scope covered by content (like place names or  co-ordinates).</td>
</tr>
<tr>
<td><code>DC.Creator</code></td>
<td>An individual responsible for the construction of the  content.</td>
</tr>
<tr>
<td><code>DC.Date</code></td>
<td>The point of time of which the page or content was  created.</td>
</tr>
<tr>
<td><code>DC.Description</code></td>
<td>Explains the resource and can include links to a table of  contents.</td>
</tr>
<tr>
<td><code>DC.Format</code></td>
<td>Provides the file format of the document (for  interpretation).</td>
</tr>
<tr>
<td><code>DC.Identifier</code></td>
<td>Links to a URL, DOI, ISSN or ISBN which references the  content.</td>
</tr>
<tr>
<td><code>DC.Language</code></td>
<td>Provides details of the language or dialect used for  content.</td>
</tr>
<tr>
<td><code>DC.Publisher</code></td>
<td>Identifies the person or group who made the resource  available.</td>
</tr>
<tr>
<td><code>DC.Relation</code></td>
<td>Links to a resource which relates to the published  information.</td>
</tr>
<tr>
<td><code>DC.Rights</code></td>
<td>Gives license data such as a link to your terms of usage  policy.</td>
</tr>
<tr>
<td><code>DC.Source</code></td>
<td>Highlights the source or URL of origin for the pages cited  content.</td>
</tr>
<tr>
<td><code>DC.Subject</code></td>
<td>Lists semicolon separated strings that identify a pages  subject.</td>
</tr>
<tr>
<td><code>DC.Title</code></td>
<td>The name which indicates what the document is known as.</td>
</tr>
<tr>
<td><code>DC.Type</code></td>
<td>Shows content categories, functions, genres or aggregation  levels.</td>
</tr>
</table>
<h4>Example:</h4>
<pre>&lt;meta name=&quot;DC.Creator&quot; content=&quot;Jacob Gube&quot; /&gt;
</pre>
<p><strong>Note:</strong> As denoted in an article I wrote called &quot;<a href="http://sixrevisions.com/web-standards/5-web-files-that-will-improve-your-website/">5 Web Files That Will Improve Your Website</a>,&quot; you can actually place all of the relevant DCMI terms and metadata references into a handy, cacheable RDF file. While having meta tags outside the HTML head may sound strange, it&#8217;s a recognized way of serving repeating information (such as the site&#8217;s creator or site&#8217;s spoken language).</p>
<p>The effects meta tags have is of having semantic richness in your HTML documents, making your site all the more interoperable and meaningful to user agents, web robots, and web services.</p>
<h3>Luxury &lt;link&gt; Tags</h3>
<p>The simple purpose of the link element is (exactly as it sounds) to provide the browser with a location to an external resource that relates to the document in some way.</p>
<p>This element has so many purposes &#8212; from providing links to external stylesheets to indicating that RSS feeds are available, licensing of a web page, right across to referencing a favicon for your lovely web design.</p>
<p><img src="http://images.sixrevisions.com/2010/09/02-08_link_tag.png" width="550" height="256" /><span class="figure-caption">Without the link element, Internet Explorer wouldn&#8217;t immediately know this feed exists.</span></p>
<p>Whilst many link conventions have been established, none are more grounded in the rich, textured history of HTML as the stylesheet. As you are already aware, if you have an external CSS file that contains your site&#8217;s CSS, you use the <code>&lt;link&gt;</code> element to reference that file within the document&#8217;s head. This allows the web browser to load the file, process its contents, and then apply your styles to the document&#8217;s objects.</p>
<p>Below are the two primary ways you refer to a CSS file:</p>
<table width="550" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><code>Stylesheet</code></td>
<td>This identifies a stylesheet to apply to the immediate  document.</td>
</tr>
<tr>
<td><code>Alternative Stylesheet</code></td>
<td>This lists a stylesheet that can be triggered upon a user&#8217;s  request.</td>
</tr>
</table>
<h4>Example:</h4>
<pre>&lt;link rel=&quot;stylesheet&quot; href=&quot;style.css&quot; type=&quot;text/css&quot; media=&quot;screen&quot; /&gt;
</pre>
<p><img src="http://images.sixrevisions.com/2010/09/02-09_bird.jpg" width="550" height="209" /><span class="figure-caption">None of the unique style in this design would work without the CSS file it uses.</span></p>
<p>Since the evolution of CSS3 (and the way Internet Explorer works), a unique level of complexity for stylesheet references have been forged. Not only can you wrap this element within conditional comments, but with <a href="http://www.w3.org/TR/css3-mediaqueries/">media queries</a>, you can apply the code only if certain conditions are met by the user agent.</p>
<p>It&#8217;s important that while stylesheet references take much of the glory for the link element, we also mention additional ways to make use of this flexible method of enhancing a site.</p>
<p>A classic example of how such elements can be used is defined by the Opera browser&#8217;s &quot;navigation bar&quot; which actively seeks out link references with certain <code>rel</code> values like <code>index</code>, <code>author</code> and <code>home</code> to provide a site-wide method of linking to specific places which may be of use to the end-user (via the browser).</p>
<p>While it&#8217;s only found in Opera, or through a plug-in/add-on/extension in other browsers, it can be really helpful in the right hands.</p>
<p><img src="http://images.sixrevisions.com/2010/09/02-10_opera.png" width="550" height="27" /><span class="figure-caption">Opera has a navigation menu that links to important document or site sections.</span></p>
<p>Below are the various navigation links that Opera supports:</p>
<table width="550" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><code>Author</code></td>
<td>Usually links to a page with author details such as &quot;about  us&quot;.</td>
</tr>
<tr>
<td><code>Contents</code></td>
<td>Links to a page or sitemap which structures the contents  layout.</td>
</tr>
<tr>
<td><code>Copyright</code></td>
<td>References a sites copyright, privacy or terms of usage  policy.</td>
</tr>
<tr>
<td><code>First</code></td>
<td>Links to the first page or fragment section of a long  document.</td>
</tr>
<tr>
<td><code>Glossary</code></td>
<td>Sends the user to a page of terms or related external  resources.</td>
</tr>
<tr>
<td><code>Help</code></td>
<td>Usually links to pages where support or contact can be gained.</td>
</tr>
<tr>
<td><code>Home</code></td>
<td>Links to the homepage or the primary document of a  website.</td>
</tr>
<tr>
<td><code>Index</code></td>
<td>Used to link to a page indexing where certain content  occurs.</td>
</tr>
<tr>
<td><code>Last</code></td>
<td>Links to the last page or fragment section of a long  document.</td>
</tr>
<tr>
<td><code>Next</code></td>
<td>Used when content is split over several pages to forward  the user.</td>
</tr>
<tr>
<td><code>Prev</code></td>
<td>Refers to a previous page when content is split over  multiple pages.</td>
</tr>
<tr>
<td><code>Search</code></td>
<td>Identifies a specific page used to perform an advanced  search.</td>
</tr>
<tr>
<td><code>Up</code></td>
<td>Can either link to a pages parent or go to the top of a  long page.</td>
</tr>
</table>
<h4>Example:</h4>
<pre>&lt;link rel=&quot;index&quot; title=&quot;Six Revisions&quot; href=&quot;http://sixrevisions.com&quot; /&gt;</pre>
<p><img src="http://images.sixrevisions.com/2010/09/02-11_other_uses_of_link.png" width="550" height="62" /><span class="figure-caption">Web browsers can do so much with link elements. It&#8217;s extraordinary.</span></p>
<p>Opera isn&#8217;t the only browser that can take additional advantage of the link element. In fact, all of the below have been adopted by browsers to reference external files which can impact either the way your website looks or functions.</p>
<table width="550" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><code>Alternate</code></td>
<td>Refers to files that link to the site such as RSS and Atom  feeds.</td>
</tr>
<tr>
<td><code>Apple-touch-icon</code></td>
<td>Identifies an icon image which can be used by Apple  devices.</td>
</tr>
<tr>
<td><code>Dublin (Or Meta)</code></td>
<td>Primarily used to indicate an instance of the DCMI RDF  document.</td>
</tr>
<tr>
<td><code>P3P</code></td>
<td>Links to a policy file which relays information about user  privacy.</td>
</tr>
<tr>
<td><code>PICS-label</code></td>
<td>Assigns a content rating based on a sites family  friendliness.</td>
</tr>
<tr>
<td><code>Search</code></td>
<td>Identifies a web browser compatible OpenSearch document.</td>
</tr>
<tr>
<td><code>Shortcut Icon</code></td>
<td>Links to a Favicon that is shown within the browser  address bar.</td>
</tr>
<tr>
<td><code>Sitemap</code></td>
<td>Refers to a XML sitemap for search engines to begin  indexing.</td>
</tr>
</table>
<h4>Example:</h4>
<pre>&lt;link rel=&quot;shortcut icon&quot; type=&quot;image/vnd.microsoft.icon&quot; href=&quot;favicon.ico&quot; /&gt;</pre>
<p>Examples of what can be included can range from OpenID (a universal authentication system) right through to referencing a document or profile setup by the microformat community (such as XFN) which relay semantic information about your pages.</p>
<p><img src="http://images.sixrevisions.com/2010/09/02-12_additional_stuff.png" width="560" height="208" /><span class="figure-caption">Just because their effects are not visible doesn&#8217;t mean they don&#8217;t exist.</span></p>
<p>Below you will find a range of non-standard link references:</p>
<table width="550" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><code>appendix</code></td>
<td>Links to a file providing supplementary details for your  content.</td>
</tr>
<tr>
<td><code>bookmark</code></td>
<td>Identifies a key fragment within the document like  #important.</td>
</tr>
<tr>
<td><code>chapter</code></td>
<td>Indicates a specific chapter or volume of a multi-page  document.</td>
</tr>
<tr>
<td><code>edit</code></td>
<td>Used by some CMS software to indicate a location to edit  the file.</td>
</tr>
<tr>
<td><code>license</code></td>
<td>References the documents license (such as Creative  Commons).</td>
</tr>
<tr>
<td><code>openid.delegate</code></td>
<td>The website address used to identify an OpenID users  account.</td>
</tr>
<tr>
<td><code>openid.server</code></td>
<td>The server where verification and validation of the  details occur.</td>
</tr>
<tr>
<td><code>pingback</code></td>
<td>Allows blogs to determine when someone links to a  resource.</td>
</tr>
<tr>
<td><code>section</code></td>
<td>Identifies a section of the document within a given  chapter.</td>
</tr>
<tr>
<td><code>subsection</code></td>
<td>Links to a specific subsection of a section within a given  chapter.</td>
</tr>
<tr>
<td><code>Start</code></td>
<td>Refers to the initial title page within a collection of  documents.</td>
</tr>
</table>
<h4>Example:</h4>
<pre>&lt;link rel=&quot;license&quot; title=&quot;Creative Commons Attribution 2.0 UK Licence&quot; href=&quot;http://creativecommons.org/licenses/by/2.0/uk/&quot; /&gt;
</pre>
<p>As a best practice you should always consider your link options carefully as referencing external files may increase the HTTP requests your web pages make to render a web page,  thus slowing down <a href="http://sixrevisions.com/web-development/five-ways-to-speed-up-page-response-times/">page response times</a>. Use only what you need and know why you need them.</p>
<h3>Wrapping Up</h3>
<p>While the contents of a document&#8217;s head could technically be limitless, it&#8217;s worth knowing what parts will give you a genuine benefit and which parts will simply be extra bloat you don&#8217;t need.</p>
<p>As a general rule, the best principle you can follow is to try and keep the head clean and well structured, but to also strike a balance between keeping things simple and doing what is best for your visitors.</p>
<p>While many people leave their heads as empty as possible, a better plan is to weigh up your options and use whatever enhances the user&#8217;s experience.</p>
<p>Behind the scenes in the head of a web page, there are a lot of cool things going on. Don&#8217;t overlook it.</p>
<h3>Related Content</h3>
<ul>
<li><a href="http://sixrevisions.com/web-standards/5-web-files-that-will-improve-your-website/">5 Web Files That Will Improve Your Website</a></li>
<li><a href="http://sixrevisions.com/web-standards/problems-with-using-website-validation-services/">Problems with Using Website Validation Services</a></li>
<li><a href="http://sixrevisions.com/css/css-tips/css-tip-2-structural-naming-convention-in-css/">Structural Naming Convention in CSS</a></li>
<li><em>Related categories</em>: <a href="http://sixrevisions.com/category/web-standards/">Web Standards</a> and <a href="http://sixrevisions.com/category/web-development/">Web Development</a></li>
</ul>
<h3>About the Author</h3>
<p class="about-author"><img src="http://images.sixrevisions.com/authors/alexander_dawson_small.jpg" alt="" width="80" height="80" /><span class="author-bio-text"><strong>Alexander Dawson</strong> is a freelance web designer, author and recreational software developer specializing in web standards, accessibility and UX design. As well as running a business called <strong><a href="http://www.hitechy.com/">HiTechy</a></strong> and writing, he spends time on <strong><a href="http://twitter.com/AlexDawsonUK">Twitter</a></strong>, SitePoint&#8217;s forums and other places, helping those in need.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://sixrevisions.com/web-standards/a-comprehensive-guide-inside-your/feed/</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
		<item>
		<title>20 HTML Best Practices You Should Follow</title>
		<link>http://sixrevisions.com/web-standards/20-html-best-practices-you-should-follow/</link>
		<comments>http://sixrevisions.com/web-standards/20-html-best-practices-you-should-follow/#comments</comments>
		<pubDate>Mon, 16 Aug 2010 13:00:49 +0000</pubDate>
		<dc:creator>Jacob Gube</dc:creator>
				<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://sixrevisions.com/?p=3890</guid>
		<description><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3890&c=725633224' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3890&c=725633224' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br />Most of the web pages you encounter is presented to you via HTML, the world wide web&#8217;s markup language. In this article, I will share with you 20 best practices that will lead to clean and correct markup. 1. Always Declare a Doctype The doctype declaration should be the first thing in your HTML documents. [...]]]></description>
			<content:encoded><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3890&c=1720328552' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3890&c=1720328552' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br /><p><a href="http://sixrevisions.com/web-standards/20-html-best-practices-you-should-follow/"><img src="http://images.sixrevisions.com/2010/08/22-06_xhtml_best_ld_img.jpg" width="550" height="200" alt="20 XHTML Best Practices for Beginners" /></a></p>
<p>Most of the web pages you encounter is presented to you via HTML, the world wide web&#8217;s markup language. In this article, I will share with you 20 best practices that will lead to clean and correct markup.</p>
<p><span id="more-3890"></span></p>
<h3>1. Always Declare a Doctype</h3>
<p>The doctype declaration should be the first thing in your HTML documents. The doctype declaration tells the browser about the XHTML standards you will be using and  helps  it  read and render your markup correctly.</p>
<p>I would recommend using the XHTML 1.0 strict doctype.  Some developers consider it a tough choice because this particular standard is less forgiving than loose or transitional doctype declarations, but it also ensures that your code abides strictly by the latest standards.</p>
<pre>&lt;!DOCTYPE html PUBLIC &quot;-//W3C//<strong>DTD XHTML 1.0 Strict</strong>//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd&quot;&gt;</pre>
<h3>2. Use Meaningful Title Tags</h3>
<p>The <code>&lt;title&gt;</code> tag helps make a web page more meaningful and search-engine friendly. For example, the text inside the <code>&lt;title&gt;</code> tag appears in Google&#8217;s search engine results page, as well as in the user&#8217;s web browser bar and tabs.</p>
<p>Take for instance, the following example:</p>
<pre>&lt;title&gt;Six Revisions - Web Development and Design Information&lt;/title&gt;</pre>
<p>The example above appears like the following image in Google&#8217;s search engine results page:</p>
<p><img src="http://images.sixrevisions.com/2010/08/22-01_title_example.png" width="550" height="224" /></p>
<h3>3. Use Descriptive Meta Tags</h3>
<p>Meta tags make your web page more meaningful for user agents like search engine spiders.</p>
<h4>Description Meta Attribute</h4>
<p>The <code>description</code> meta attribute describes the basic purpose of your web page (a summary of what the web page contains). For each web page, you should place a consise and relevant summary inside the meta description tag.</p>
<p>For example, this description:</p>
<pre>&lt;meta name=&quot;description&quot; content=&quot;Six Revisions is a blog that shares useful information about web development and design, dedicated to people who build websites.&quot; /&gt;</pre>
<p>Shows up in Google&#8217;s search engine results page as follows:</p>
<p><img src="http://images.sixrevisions.com/2010/08/22-02_description_example.png" width="550" height="224" /></p>
<p><strong>Don&#8217;t try to spam your description</strong> with repeated words and phrases because search engines are intelligent enough to detect that. Instead, just try to be simple and straightforward in explaining the purpose of your web page.</p>
<h4>Keywords Meta Attribute</h4>
<pre>&lt;meta name=&quot;keywords&quot; content=&quot;web design, web development&quot; /&gt;</pre>
<p>The <code>keywords</code> meta attribute contains a comma-separated list of key words and phrases that relate to your web page. These keywords make your web page even more meaningful.</p>
<p>Again, just like with the <code>description</code> meta attribute, avoid repetition of words and phrases; just mention a few words that aptly describes and categorizes your web page.</p>
<h3>4. Use Divs to Divide Your Layout into Major Sections</h3>
<p>Consider dividing your web page into major sections as the first step in constructing a website design.</p>
<p><img src="http://images.sixrevisions.com/2010/08/22-03_divide_into_sections.png" width="480" height="190" /></p>
<p>Doing so from the start promotes clean and well-indented code. It will also help you avoid confusion and excess use of divs, especially if you are writing complex and lengthy markup.</p>
<h3>5. Separate Content from Presentation</h3>
<p>Your HTML is your content. CSS provides your content&#8217;s visual presentation. Never mix both.</p>
<p>Don&#8217;t use inline styles in your HTML. Always create a separate CSS file for your styles. This will help you and future developers that might work on your code make changes to the design quicker and make your content more easily digestible for user agents.</p>
<h4>Bad Practice: Inline Styles</h4>
<p>Below, you can see a paragraph element that is styled using the <code>style</code> attribute. It will work, but it&#8217;s bad practice.</p>
<pre>&lt;p style=&quot;color:#abc; font-size:14px; font-family:arial,sans-serif;&quot;&gt;I hate to separate my content from presentation&lt;/p&gt;</pre>
<h3>6. Minify and Unify CSS</h3>
<p>A simple website usually has one main CSS file and possibly a few more for things like <a href="http://sixrevisions.com/css/css-tips/css-tip-1-resetting-your-styles-with-css-reset/">CSS reset</a> and browser-specific fixes.</p>
<p>But each CSS file has to make an HTTP request, which slows down <a href="http://sixrevisions.com/web-development/five-ways-to-speed-up-page-response-times/" title="Five Ways to Speed Up Page Response Times - sixrevisions.com">website load times</a>.</p>
<p>A solution to this problem is to minify (take out unneeded characters such as spaces, newlines, and tabs) all your  code  and try to unify files that can be combined into one file. This will  improve your website load times.</p>
<p>A problem with this approach is that you have to &quot;unminify&quot; (because it&#8217;s hard to read unformatted code) and then redo the minification process every time you need to update your code. So it&#8217;s better to do this at the end of your production cycle.</p>
<p>Online tools to minify and optimize CSS can be found on this list of <a href="http://sixrevisions.com/css/css_code_optimization_formatting_validation/">CSS optimizers</a>.</p>
<p>Also, always put your stylesheet reference link inside the <code>&lt;head&gt;&lt;/head&gt;</code> tags because it will help your web page feel more responsive while loading.</p>
<h3>7. Minify, Unify and Move Down JavaScript</h3>
<p>Like CSS, never use inline JavaScript and try to minify and unify your JavaScript libraries to reduce the number of HTTP requests that need to be made in order to generate one of your web pages.</p>
<p>But unlike CSS, there is one really bad thing about external JavaScript files: browsers do not allow parallel downloads, which means the browser cannot download anything while it&#8217;s downloading JavaScript, resulting in making the page feel like it&#8217;s loading slowly.</p>
<p>So, the best strategy here is to load JavaScript last (i.e. after your CSS is loaded). To do this, place JavaScript  at the bottom of your HTML document where possible. Best practice recommends doing this right before the closing <code>&lt;body&gt;</code> tag.</p>
<h4>Example</h4>
<p><img src="http://images.sixrevisions.com/2010/08/22-04_js_at_bottom.png" width="540" height="210" alt="Minify, Unify and Move Down JavaScript" /></p>
<h3>8. Use Heading Elements Wisely</h3>
<p>Learn to use <code>&lt;h1&gt;</code> to <code>&lt;h6&gt;</code> elements to denote your HTML&#8217;s content hierarchy. This helps make your content more meaningful for screen-reading software and search engines, as well as other user agents. </p>
<h4>Example</h4>
<pre>&lt;h1&gt;This is the topmost heading&lt;/h1&gt;
&lt;h2&gt;This is a sub-heading underneath the topmost heading.&lt;/h2&gt;
&lt;h3&gt;This is a sub-heading underneath the h2 heading.&lt;/h3&gt;</pre>
<p>For blogs, I really recommend using the <code>&lt;h1&gt;</code> element for the blog post&#8217;s title instead of the site&#8217;s name because this is the most important thing for search engines.</p>
<h4>WordPress Code Example</h4>
<pre>&lt;h1 class=&quot;entry-title&quot;&gt;&lt;?php the_title(); ?&gt;&lt;/h1&gt;</pre>
<h3>9.Use the Right HTML Element at the Right Place</h3>
<p>Learn about all the  available HTML elements and use them correctly for a semantic and meaningful content structure.</p>
<p>Use <code>&lt;em&gt;</code> for <em>em</em>phasis and <code>&lt;strong&gt;</code> for <strong>heavy emphasis</strong>, instead of <code>&lt;i&gt;</code> or <code>&lt;b&gt;</code> (which are deprecated).</p>
<h4>Example</h4>
<pre>&lt;em&gt;emphasized text&lt;/em&gt;
&lt;strong&gt;strongly emphasized text&lt;/strong&gt;		</pre>
<p>Use <code>&lt;p&gt;</code> for paragraphs. Don&#8217;t use <code>&lt;br /&gt;</code> to add a new line between paragraphs; use CSS margin and/or padding properties instead.</p>
<p>For a set of related elements, use:</p>
<ul>
<li><code>&lt;ul&gt;</code> (unordered lists) when the order of the list items are not important</li>
<li><code>&lt;ol&gt;</code> (ordered lists) when the order of the list items are important</li>
<li><code>&lt;dl&gt;</code> (definition lists) for item/definition pairs</li>
</ul>
<p>Don&#8217;t use <code>&lt;blockquote&gt;</code> for indentation purposes; use it when actually quoting text.</p>
<h3>10. Don&#8217;t Use Divs for Everything</h3>
<p>Sometimes developers end up wrapping <code>&lt;div&gt;</code> tags around multiple <code>&lt;div&gt;</code> tags that contain more <code>&lt;div&gt;</code> tags, creating a mountain of divs.</p>
<p>Under the <a href="http://dev.w3.org/html5/spec/Overview.html#the-div-element">latest draft of the W3C HTML specification</a>, a <code>&lt;div&gt;</code> is a meaningless element that should be used &quot;as an element of last resort, for when no other element is suitable.&quot;</p>
<p>But many use it even for menial things like displaying inline elements as block elements (instead of the <code>display:block;</code> CSS property).</p>
<p>Avoid creating mountains of divs by using them sparingly and responsibly.</p>
<h3>11. Use an Unordered List (&lt;ul&gt;) for Navigation</h3>
<p>Navigation is a very important aspect of a website design and the <code>&lt;ul&gt;</code> element combined with CSS makes your navigation menus  semantic (because, after all, a navigation menu is a list of links) as well as beautiful.</p>
<p>Also, by convention, an unordered list for your navigation menu has been the accepted markup.</p>
<h4>An Example of an Unordered List</h4>
<pre>&lt;ul id=&quot;main_nav&quot;&gt;
&lt;li&gt;&lt;a href=&quot;#&quot; class=&quot;active&quot;&gt;Home&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;About&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Portfolio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Services&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Blog&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#&quot;&gt;Contact Us&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</pre>
<h4>CSS to Style the Unordered List into a Horizontal Navigation Bar</h4>
<pre> #main_nav { position:absolute; right:30px; top:40px;}
  				 #main_nav li { float:left; margin-left:2px; }
  				 #main_nav li a{ font-size:16px; color:#fff; text-decoration:none; padding:8px 15px; -moz-border-radius:7px; -webkit-border-radius:7px; border-radius:7px;}
  				 #main_nav li a.active,
  			#main_nav li a:hover{  background-color:#0b86cb;  }</pre>
<h4>Output</h4>
<p><img src="http://images.sixrevisions.com/2010/08/22-05_nav_sample.jpg" width="492" height="66" alt="Use an Unordered List (&lt;ul&gt;) for Navigation" /></p>
<h3>12. Close Your Tags</h3>
<p>Closing all your tags is a W3C specification. Some browsers may still render your pages correctly (under Quirks mode), but not closing your tags is invalid under standards.</p>
<h4>Example</h4>
<pre>&lt;div id=&quot;test&quot;&gt;
&lt;img src=&quot;images/sample.jpg&quot; alt=&quot;sample&quot; /&gt;
&lt;a href=&quot;#&quot; title=&quot;test&quot;&gt;test&lt;/a&gt;
&lt;p&gt;some sample text &lt;/p&gt;
&lt;/div&gt;</pre>
<h3>13. Use Lower Case Markup</h3>
<p>It is an industry-standard practice to keep your markup lower-cased. Capitalizing your markup will work and will probably not affect how your web pages are rendered, but it does affect code readability.</p>
<h4>Bad Practice</h4>
<pre>&lt;DIV&gt;
&lt;IMG SRC=&quot;images/sample.jpg&quot; alt=&quot;sample&quot;/&gt;
&lt;A HREF=&quot;#&quot; TITLE=&quot;TEST&quot;&gt;test&lt;/A&gt;
&lt;P&gt;some sample text&lt;/P&gt;
&lt;/DIV&gt;</pre>
<h4>Good Practice</h4>
<pre>&lt;div id=&quot;test&quot;&gt;
&lt;img src=&quot;images/sample.jpg&quot; alt=&quot;sample&quot; /&gt;
&lt;a href=&quot;#&quot; title=&quot;test&quot;&gt;test&lt;/a&gt;
&lt;p&gt;some sample text &lt;/p&gt;
&lt;/div&gt;</pre>
<h3>14. Use Alt Attributes with Images</h3>
<p>Using a meaningful <code>alt</code> attribute with <code>&lt;img&gt;</code> elements is a must for writing valid and semantic code. </p>
<h4>Bad Practice</h4>
<pre>&lt;img id=&quot;logo&quot; src=&quot;images/bgr_logo.png&quot;/&gt;</pre>
<pre>
<strong>&lt;!-- has an alt attribute, which will validate, but alt value is meaningless --&gt;</strong>
&lt;img id=&quot;logo&quot; src=&quot;images/bgr_logo.png&quot; <strong>alt=&quot;brg_logo.png&quot;</strong> /&gt;</pre>
<h4>Good Practice</h4>
<pre>&lt;img id=&quot;logo&quot; src=&quot;images/bgr_logo.png&quot; <strong>alt=&quot;Six Revisions Logo&quot;</strong> /&gt;</pre>
<h3>15.Use Title Attributes with Links (When Needed)</h3>
<p>Using a <code>title</code> attribute in your anchor elements will improve accessibility when used the right way.</p>
<p>It is important to understand that the <code>title</code> attribute should be used to increase the meaning of the anchor tag.</p>
<h4>Bad Practice</h4>
<pre>
<strong>&lt;!-- Redundant title attribute --&gt;</strong>
&lt;a href=&quot;http://blog.com/all-articles&quot; <strong>title=&quot;Click Here&quot;</strong>&gt;Click here.&lt;/a&gt;</pre>
<p>When a screen reader reads the anchor tag, the listener has to listen to the same text twice. What&#8217;s worse is that it doesn&#8217;t explain what the page being linked to is.</p>
<p>If you are just repeating the anchor&#8217;s text or aren&#8217;t intending to describe the page being linked, it&#8217;s better not to use  a <code>title</code> at all. </p>
<h4>Good Practice</h4>
<pre>&lt;a href=&quot;http://blog.com/all-articles&quot; <strong>title=&quot;A list of all articles.&quot;</strong>&gt;Click here.&lt;/a&gt;</pre>
<h3>16. Use Fieldset and Labels in Web Forms</h3>
<p>Use the <code>&lt;label&gt;</code> element to label input fields. Divide input fields into logical sets using <code>&lt;fieldset&gt;</code>. Name a <code>&lt;fieldset&gt;</code> using <code>&lt;legend&gt;</code>. All of this will make your forms more understandable for users and improve the quality of your code.</p>
<h4>Example</h4>
<pre>&lt;fieldset&gt;
&#160;&#160;&#160; &lt;legend&gt;Personal Details&lt;/legend&gt;
&#160;&#160;&#160; &lt;label for=&quot;name&quot;&gt;name&lt;/label&gt;&lt;input type=&quot;text&quot; id=&quot;name&quot; name=&quot;name&quot; /&gt;
&#160;&#160;&#160; &lt;label for=&quot;email&quot;&gt;email&lt;/label&gt;&lt;input type=&quot;text&quot; id=&quot;email&quot; name=&quot;email&quot; /&gt;
&#160;&#160;&#160; &lt;label for=&quot;subject&quot;&gt;subject&lt;/label&gt;&lt;input type=&quot;text&quot; id=&quot;subject&quot; name=&quot;subject&quot; /&gt;
&#160;&#160;&#160; &lt;label for=&quot;message&quot; &gt;message&lt;/label&gt;&lt;textarea rows=&quot;10&quot; cols=&quot;20&quot; id=&quot;message&quot; name=&quot;message&quot; &gt;&lt;/textarea&gt;
&lt;/fieldset&gt;</pre>
<h3>17.Use Modular IE Fixes</h3>
<p>You can use conditional comments to target Internet Explorer if you are having issues with your web pages.</p>
<h4>IE 7 Example</h4>
<pre>&lt;!--[if IE 7]&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;css/ie-7.css&quot; media=&quot;all&quot;&gt;
&lt;![endif]--&gt;</pre>
<h4>IE 6 Example</h4>
<pre>&lt;!--[if IE 6]&gt;
&lt;link rel=&quot;stylesheet&quot; href=&quot;css/ie-6.css&quot; media=&quot;all&quot;&gt;
&lt;script type=&quot;text/javascript&quot; src=&quot;js/DD_belatedPNG_0.0.8a-min.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
  						DD_belatedPNG.fix('#logo');
  				&lt;/script&gt;
&lt;![endif]--&gt;</pre>
<p>However, try to make your fixes modular to future-proof your work such that when older versions of IE don&#8217;t need to be supported anymore, you just have to update your site in one place (i.e. take out the reference to the ie-6.css stylesheet).</p>
<p>By the way, for pixing PNG transparencies in IE6, I recommend the <a href="http://www.dillerdesign.com/experiment/DD_belatedPNG/">DD_belated PNG script</a> (the JavaScript method referenced above).</p>
<h3>18.Validate Your Code</h3>
<p>Validation should not be the end-all evaluation of good work versus bad work. Just because your work validates <a href="http://sixrevisions.com/web-standards/problems-with-using-website-validation-services/" title="Problems with Using Website Validation Services - sixrevisions.com">doesn&#8217;t automatically mean it&#8217;s good code</a>; and conversely, a work that doesn&#8217;t fully validate doesn&#8217;t mean it&#8217;s bad (if you don&#8217;t believe me, try auto-validating Google or Yahoo!). </p>
<p>But auto-validation services such as the free W3C <a href="http://validator.w3.org/">markup validation</a> service can be a useful debugger that helps you identify rendering errors.</p>
<p>While writing HTML, make a habit to validate  frequently; this will save you from issues that are harder to pinpoint (or redo) once your work is completed and lengthier. </p>
<h3>19. Write Consistently Formatted Code</h3>
<p>A cleanly written and well-indented code base shows your professionalism, as well as your consideration for the other people that might need to work on your code.</p>
<p>Write properly indented clean markup from the start; it will increase your work&#8217;s readability.</p>
<h3>20. Avoid Excessive Comments</h3>
<p>While documenting your code, the purpose  is to make it easier to understand, so commenting your code logic is a good thing for programming languages like PHP, Java and C#.</p>
<p>But markup is very much self-explanatory and commenting every line of code does not make sense in HTML/XHTML. If you find yourself commenting your HTML a lot to explain what is going on, you should review your work for semantics and <a href="http://sixrevisions.com/css/css-tips/css-tip-2-structural-naming-convention-in-css/" title="Structural Naming Convention in CSS - sixrevisions.com">appropriate naming conventions</a>.</p>
<h3>Related Content</h3>
<ul>
<li><a href="http://sixrevisions.com/web-development/html5-iphone-app/">How to Make an  HTML5 iPhone App</a></li>
<li><a href="http://sixrevisions.com/resources/cheat_sheets_web_developer/">Cheat  Sheets for Front-end Web Developers</a></li>
<li><a href="http://sixrevisions.com/web-development/5-good-habits-that-will-make-you-a-better-coder/">5  Good Habits That Will Make You a Better Coder</a></li>
<li><em>Related categories</em>: <a href="http://sixrevisions.com/category/web-development/">Web Development</a> and <a href="http://sixrevisions.com/category/web-standards/">Web Standards</a></li>
</ul>
<h4>About the Author</h4>
<p class="about-author"><img src="http://images.sixrevisions.com/authors/saqib_sarwar_small.jpg" alt="" width="80" height="80" /><strong>Saqib Sarwar</strong> is a  freelance web developer with over 7 years of web development experience. He  specializes in XHTML, CSS, PHP and WordPress development. He loves to write  well-structured and clean code that validates. Get in touch with Saqib through his freelance business/blog, <a href="http://www.960development.com/">960Development</a> as well as follow him  on Twitter as @<a href="http://www.twitter.com/saqibsarwar">saqibsarwar</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://sixrevisions.com/web-standards/20-html-best-practices-you-should-follow/feed/</wfw:commentRss>
		<slash:comments>108</slash:comments>
		</item>
		<item>
		<title>I Never Meta URL Like You Before: A Short Domain Name Trick</title>
		<link>http://sixrevisions.com/web-standards/i-never-meta-url-like-you-before-a-short-domain-name-trick/</link>
		<comments>http://sixrevisions.com/web-standards/i-never-meta-url-like-you-before-a-short-domain-name-trick/#comments</comments>
		<pubDate>Fri, 13 Aug 2010 16:00:17 +0000</pubDate>
		<dc:creator>Jacob Gube</dc:creator>
				<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://sixrevisions.com/?p=3788</guid>
		<description><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3788&c=1352926021' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3788&c=1352926021' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br />I love a good domain name. I sometimes look wistfully back at my youth and think about the swell URLs I would have bought if I had an inkling about what the Internet would become. Today you&#8217;re lucky if you find a relevant, memorable domain that isn&#8217;t parked or in use &#8212; luckier still if [...]]]></description>
			<content:encoded><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3788&c=1947931564' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3788&c=1947931564' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br /><p><a href="http://sixrevisions.com/web-standards/i-never-meta-url-like-you-before-a-short-domain-name-trick/"><img src="http://images.sixrevisions.com/2010/08/06-01_short_url_ld_img.png" width="550" height="200" alt="I Never Meta URL Like You Before: A Short Domain Name Trick" /></a></p>
<p>I love a good domain name. I sometimes look wistfully back at my youth and think about the swell URLs I would have bought if I had an inkling about what the Internet would become.</p>
<p>Today you&#8217;re lucky if you find a relevant, memorable domain that isn&#8217;t parked or in use &#8212; luckier still if it&#8217;s short.</p>
<p><span id="more-3788"></span></p>
<p>With the traditional TLDs &#8212; top-level domains such as .com, .net, .org, and to some extent, locals like .ca and .co.uk &#8212; it&#8217;s getting more difficult to obtain short domain names without some creativity.</p>
<p>Every so often a new TLD shows up and there&#8217;s a gold-rush frenzy. When the .me extension came out, for instance, there was a <a href="http://www.dnforum.com/f551/aweso-me-24-189-a-thread-320307.html" title="aweso.me at $24,189?! - www.dnforum.com">bidding war</a> on the domain name, <code>aweso.me</code> &#8212; a creative twist for a short and memorable URL.</p>
<p>I&#8217;ve long been waiting for a chance to snag a short domain name &#8212; and this is a story of how I was recently able to do so.</p>
<h3>The Boring Technical Part</h3>
<p>In May 2010, ICANN &#8212; the organization responsible for managing domain names and IP addresses &#8212; brought Internationalized Domain Names (<a href="http://en.wikipedia.org/wiki/Internationalized_domain_name">IDN</a>) to life.</p>
<p>This allows participating extensions to use characters and symbols from other alphabets. This is due to Unicode working with <a href="http://en.wikipedia.org/wiki/Punycode" target="_blank">Punycode</a> conversion.</p>
<p>What this meant is I was able to score the amazingly short URL <a href="http://xn--z1h.ws" target="_blank">&#x25c9;.ws</a>, as well as <a href="http://xn--z1h.xn--z1h.ws/" target="_blank"> &#x25c9;.&#x25c9;.ws</a> &#8212; in context, there are <a href="http://en.wikipedia.org/wiki/Single-letter_second-level_domain">only 6 single letter domain names</a> in existence today.</p>
<h3>The Catch</h3>
<p>It&#8217;s not all fun and games though. The obvious shortcoming is that &#x25c9; (a Unicode dingbat symbol described as &quot;fisheye&quot;) and other symbols aren&#8217;t exactly easy to type. </p>
<p>Secondly, most browsers (Opera and Safari are the exception) will change that character into the Unicode string: our nice circle dingbat character becomes <a href="http://xn--z1h.ws/" target="_blank">http://xn--z1h.ws/</a> &#8212; not super presentational. </p>
<p>Email addresses using special characters (e.g. arley.mcblain@&#x25c9;.ws) doesn&#8217;t work at the moment. When the actual symbol is used, Microsoft Outlook instantly crashes, and with the Unicode string, it will just throw back an error.</p>
<p>Lastly, and perhaps the most dumbfounding, the special characters render differently in browsers and seem immune to our CSS font styling wiles.</p>
<p><img src="http://images.sixrevisions.com/2010/08/06-02_the_symbol.png" width="550" height="243" alt="IE8 on left vs. Chrome on right " /><span class="figure-caption">Font difference for the &#x27b2; symbol &#8211; IE8 on left vs. Chrome on right.</span></p>
<p>This standard is new, there&#8217;s a lot of catching up to be done.</p>
<h3>Why Use IDNs?</h3>
<p>Sure, taking advantage of IDNs isn&#8217;t perfect, but it has its uses. Short URLs are not only useful on services like Twitter where every character counts, but they are a status symbol. Symbols may not be practical, but it&#8217;s cool.</p>
<p>I guess if you&#8217;re really fussy and find the useless symbols thing too silly, you could be practical and actually use this for what it&#8217;s for: allowing you to buy domains in other languages with accents and other previously impossible characters.</p>
<p>Phénoménal!</p>
<h3>Making Your Own</h3>
<p>If you&#8217;re interested in obtaining your own short URLs using IDN, here are the steps you should take.</p>
<h4>Step 1: Find the Symbol You Want</h4>
<p>A great place to start is by checking out this <a href="http://en.wikipedia.org/wiki/List_of_Unicode_characters">list of Unicode characters</a> on Wikipedia. It&#8217;s not a complete list, but it&#8217;s pretty extensive and is a good starting point.</p>
<h4>Step 2: Test the Symbol on a Web Page in Different Browsers</h4>
<p>Before spending a penny, you might want to test what the character looks like in the different browsers on a demo page (<a href="http://xn--z1h.ws/yourespecial.html" target="_blank">like this</a>) to prevent the browser-related madness I highlighted above.</p>
<h4>Step 3: Check Availability</h4>
<p>I ended up using <a href="http://www.domainsite.com" target="_blank">Domain Site</a> to check and register the domain name. Since this is relatively new, your domain name registrant might not have the capability of registering IDNs.</p>
<h4>Step 4: Set Up the Domain Name with Your Host</h4>
<p>Your web host will likely require that you convert the symbol to the Unicode string first. Easy enough, just use a <a href="http://mct.verisign-grs.com/">Unicode converter tool</a>.</p>
<h3>Share Your Short URLs</h3>
<p>If you were inspired to grab a short URL because of this article, link to it in the comments and show us what you got.</p>
<h3>Related Content</h3>
<ul>
<li><a href="http://sixrevisions.com/resources/12-excellent-tools-for-picking-a-domain-name/">12 Excellent Tools for Picking a Domain Name</a></li>
<li><a href="http://sixrevisions.com/web_design/250-quick-web-design-tips-part-1/">250 Quick Web Design Tips (Part 1)</a></li>
<li><a href="http://sixrevisions.com/tools/tools_monitoring_website_popularity/">15 Tools for Monitoring a Website’s Popularity</a></li>
<li><em>Related categories</em>: <a href="http://sixrevisions.com/category/web-standards/">Web Standards</a> and <a href="http://sixrevisions.com/category/website-management/">Website Management</a></li>
</ul>
<h3>About the Author</h3>
<p class="about-author"><img src="http://images.sixrevisions.com/authors/arley_mcblain_small.jpg" alt="" width="80" height="80" /><strong>Arley McBlain</strong> is a web designer, web developer, in Burlington, Ontario, Canada. If you&#8217;d like to keep in touch with the author, check out his personal site, <a href="http://arleym.com/" target="_blank">ArleyM</a>, and <a href="http://twitter.com/ArleyM" target="_blank">follow him on Twitter</a> as @<a href="http://twitter.com/ArleyM" target="_blank">ArleyM</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://sixrevisions.com/web-standards/i-never-meta-url-like-you-before-a-short-domain-name-trick/feed/</wfw:commentRss>
		<slash:comments>41</slash:comments>
		</item>
		<item>
		<title>5 Web Files That Will Improve Your Website</title>
		<link>http://sixrevisions.com/web-standards/5-web-files-that-will-improve-your-website/</link>
		<comments>http://sixrevisions.com/web-standards/5-web-files-that-will-improve-your-website/#comments</comments>
		<pubDate>Thu, 15 Jul 2010 10:31:32 +0000</pubDate>
		<dc:creator>Jacob Gube</dc:creator>
				<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://sixrevisions.com/?p=3598</guid>
		<description><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3598&c=116759401' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3598&c=116759401' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br />The amount of code that developers encounter regularly is staggering. At any one time, a single site can make use of over five different web languages (i.e. MySQL, PHP, JavaScript, CSS, HTML). There are a number of lesser-known and underused ways to enhance your site with a few simple but powerful files. This article aims [...]]]></description>
			<content:encoded><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3598&c=383253091' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3598&c=383253091' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br /><p><a href="http://sixrevisions.com/web-standards/5-web-files-that-will-improve-your-website/"><img src="http://images.sixrevisions.com/2010/07/04-01_web_files_ld_img.jpg" width="550" height="200" alt="5 Web Files That Will Improve Your Website" /></a></p>
<p>The amount of code that developers encounter regularly is staggering. At any one time, a single site can make use of over five different <a href="http://sixrevisions.com/web-technology/web-languages-decoded/">web languages</a> (i.e. MySQL, PHP, JavaScript, CSS, HTML).</p>
<p>There are a number of lesser-known and underused ways to enhance your site with a few <strong>simple but powerful files.</strong> This article aims to highlight five of these unsung heroes that can assist your site. They&#8217;re pretty easy to use and understand, and thus, can be great additions to the websites you deploy or currently run.</p>
<p><span id="more-3598"></span></p>
<h3>An Overview</h3>
<p>Which files are we going to be examining (and producing)? Deciding which files to cover was certainly not an easy task for me, and there are many other files (such as .htaccess which we won&#8217;t cover) you can implement that can provide your website a boost.</p>
<p>The files I&#8217;ll talk about here were chosen for their usefulness as well as their ease of implementation. Maximum bang for our buck.</p>
<p>We&#8217;re going to cover <strong>robots.txt, favicon.ico, sitemap.xml, dublin.rdf and opensearch.xml.</strong> Their purposes range from helping search engines index your site accurately, to acting as usability and interoperability aids.</p>
<p>Let&#8217;s start with the most familiar one: robots.txt.</p>
<h3>Robots.txt</h3>
<p>The primary function of a robots.txt file is to declare which parts of your site should be off-limits for crawling.</p>
<p>By definition, the use of this file acts as an <strong>opt-out</strong> process. If there are no robots.txt for a directory on your website, by default, it&#8217;s fair game for <a href="http://en.wikipedia.org/wiki/Web_robot">web robots</a> such as search engine crawlers to access and index.</p>
<p>While you can state exclusion commands within an HTML document through the use of a meta tag (<code>&lt;meta name=&quot;robots&quot; content=&quot;noindex&quot; /&gt;</code>), the benefits of controlling omitted pages through a single text file is the added ease of maintenance.</p>
<p><strong>Note:</strong> It&#8217;s worth mentioning that obeying the robots.txt file isn&#8217;t mandatory, so it&#8217;s <strong>not a good privacy mechanism.</strong></p>
<p><img src="http://images.sixrevisions.com/2010/07/04-02_mechanics_robots.png" width="550" height="200" alt="Robots.txt" /><span class="figure-caption">This is how the robots.txt file interacts between a search engine and your website.</span></p>
<h4>Creating a Robots.txt File</h4>
<p>To create a robots.txt file the first and most obvious thing you will need is a text editor. It&#8217;s also worth pointing out that the file should be called <strong>robots.txt</strong> (or it won&#8217;t work) and it needs to exist within the root directory of your website because by default, that&#8217;s where web robots look for the file.</p>
<p>The next thing we need to do is figure out a list of instructions for the search engine spiders to follow. In many ways, the robot.txt&#8217;s structure is similar to CSS in that it is comprised of attribute and value pairs that dictate rules.</p>
<p>Another thing to note is that you can include comments inside your robots.txt file using the # (hash) character before it. This is handy for documenting your work.</p>
<p>Here&#8217;s a basic example telling web robots not to crawl the <code>/members/</code> and <code>/private/</code> directory:</p>
<pre>
 User-agent: *
 Disallow: <strong>/members/</strong>
 Disallow: <strong>/private/</strong></pre>
<p>The robots.txt exclusion standard only has two directives (there are also a few non-standard directives like <code>Crawl-delay</code>, which we&#8217;ll cover shortly).</p>
<p>The first standard directive is <code>User-agent</code>. Each robots.txt file should begin by declaring a <code>User-agent</code> value that explains which web robots (i.e. search crawlers) the file applies to.</p>
<p>Using <code>*</code> for the value of <code>User-agent</code> indicates that all web robots should follow the directives within the file;  <code>*</code> represents a wildcard match.</p>
<p>The <code>Disallow</code> directive points to the folders on your server that shouldn&#8217;t be accessed. The directive can point to a directory (i.e. <code>/myprivatefolder/</code>) or a particular file (i.e. <code>/myfolder/folder1/myprivatefile.html</code>).</p>
<p><img src="http://images.sixrevisions.com/2010/07/04-03_robotstxtorg.png" width="550" height="290" alt="There is a specification for robots.txt, but the rules and syntax are exceptionally simple." /><span class="figure-caption">There is a specification for robots.txt, but the rules and syntax are exceptionally simple.</span></p>
<h4>Robots.txt Non-Standard Directives</h4>
<p>Of course, whilst having a list of search engines and files you want hidden is useful, there are a few non-standard extensions to the robots.txt specification that will further boost its value to you and your website. Although these are non-standard directives, all <strong>major search crawlers acknowledge and support them.</strong></p>
<p>Some of these more popular non-standard directives are:</p>
<ul>
<li><strong>Sitemap:</strong> where your <code>Sitemap.xml</code> file is</li>
<li><strong>Allow:</strong> opposite of <code>Disallow</code></li>
<li><strong>Crawl-delay:</strong> sets the number of seconds between server requests that can be made by spiders</li>
</ul>
<p>There are other less supported directives such as <code>Visit-time</code>, which restricts web robots to indexing your site only between certain hours of the day.</p>
<p>Here&#8217;s an example of a more complex robots.txt file using non-standard directives:</p>
<pre>
 Allow: /private/public.html
 Comment: I love you Google, come on in!
 Crawl-delay: 10
 Request-rate: 1/10m <strong># one page every 10 minutes</strong>
 Robot-version: 2.0
 Sitemap: /sitemap.xml
 Visit-time: 0500-1300 <strong># military time format</strong></pre>
<p><img src="http://images.sixrevisions.com/2010/07/04-04_non_standard.png" width="550" height="250" alt="Whilst not a standard, there is an extension for robots.txt which has mainstream support." /><span class="figure-caption">Whilst not a standard, there is an extension for robots.txt which has mainstream support.</span></p>
<h3>Favicon.ico</h3>
<p>A favicon (short for &quot;favourites icon&quot;) is a small image (like a desktop application&#8217;s shortcut) that represents a site.</p>
<p>Shown in the browser&#8217;s address bar, the favicon gives you a unique opportunity to stylise your site in a way that will add identity to browser favourites/bookmarks (both locally and through social networks).</p>
<p>The great thing about this file is that every major browser has built-in support for it, so it&#8217;s a solid extra file to provide.</p>
<p><img src="http://images.sixrevisions.com/2010/07/04-05_how_favicos_work.png" width="550" height="200" alt="This is how the favicon.ico file affects your site visually through the browser." /><span class="figure-caption">This is how the favicon.ico file affects your site visually through the browser such as IE.</span></p>
<h4>Creating a Favicon.ico file</h4>
<p>To create a favicon, you&#8217;ll need an image or icon editor. I am a fan of <a href="http://www.axialis.com/iconworkshop/">Axialis IconWorkshop</a>, but there are free editors like <a href="http://icofx.ro/">IcoFX</a> that do the job well.</p>
<p>You can also find quite a few free online favicon tools by viewing this <a href="http://sixrevisions.com/resources/favicon_generators_resources/">list of web-based favicon generators</a>.</p>
<p>You need to have a 16x16px icon (or 32x32px, scaled down) that matches what you want to see in the browser.</p>
<p>Once you are done creating your icon&#8217;s design, save the file as &quot;favicon.ico&quot; in the root directory of your web server (that&#8217;s where browsers look for it by default).</p>
<p><strong>Note:</strong> It&#8217;s a good idea to use the .ico file type, as some browsers don&#8217;t support PNG, GIF or JPEG file types.</p>
<p>To make this file work properly, refer to the location of your favicon in the <code>&lt;head&gt;</code> tags of all your HTML documents, as such:</p>
<pre>
 &lt;head&gt;
 &lt;link rel=&quot;shortcut icon&quot; type=&quot;image/vnd.microsoft.icon&quot; href=&quot;favicon.ico&quot; /&gt;
 &lt;head&gt;
</pre>
<p>The <code>rel</code> attribute values of &quot;shortcut icon&quot; or &quot;icon&quot; are considered acceptable and the MIME type of &quot;vnd.microsoft.icon&quot; (as of 2003) replaced the older type (&quot;image/x-icon&quot;) as the official standardized favicon MIME type for .ico files on the web.</p>
<p><strong>Note:</strong> While Internet Explorer (and some other browsers) will actively seek out your favicon in the root directory of your site by default (which is why you should have it there), it&#8217;s worth adding the above code into the <code>&lt;head&gt;</code> of your HTML just to make it explicitly known by other types of browser agents.</p>
<p><img src="http://images.sixrevisions.com/2010/07/04-06_favicon_tools.png" width="550" height="290" alt="There are multiple online tools which can create a favicon from existing images." /><span class="figure-caption">There are multiple online tools which can create a favicon from existing images.</span></p>
<h4>Favicons in Apple Devices</h4>
<p>Another standard (of sorts) has appeared in light of Apple&#8217;s iPod, iPad, and iPhone. In this situation, you can offer a 57&#215;57 PNG, ICO or GIF file (alpha transparency supported) that can be displayed on the devices&#8217; Home screen using the web clip feature.</p>
<p>Apple also recommends that you use 90-degree corners (not rounded corners, which the devices will do for you automatically) to maintain the &quot;feel&quot; of such icons.</p>
<p>To make this file work properly, place the following code into every page within your <code>&lt;head&gt;</code> tags:</p>
<pre>
 &lt;head&gt;
 &lt;link rel=&quot;apple-touch-icon&quot; href=&quot;images/icon.png&quot; /&gt;
 &lt;/head&gt;
</pre>
<p><img src="http://images.sixrevisions.com/2010/07/04-07_apple_favicons.jpg" width="550" height="176" alt="For users of Apple devices, a specially produced &quot;favicon&quot; can be produced." /><span class="figure-caption">For users of Apple devices, a specially produced &quot;favicon&quot; can be produced.</span></p>
<h3>Sitemap.xml</h3>
<p>One thing website owners worry about is getting their website indexed correctly by the major search engines like Google.</p>
<p>While the robots.txt file explains what files you want excluded from results, the Sitemap.xml file lists the structure of your site and its pages. It gives search engine crawlers an idea of where things are on your site.</p>
<p><img src="http://images.sixrevisions.com/2010/07/04-08_sitemapxml.png" width="550" height="200" alt="This is how the Sitemap.xml file interacts between a search engine and your website." /><span class="figure-caption">This is how the Sitemap.xml file interacts between a search engine and your website.</span></p>
<p>As always, the first recommended course of action to produce a Sitemap is to create the XML file that will contain its code. It&#8217;s recommended that you name the file as &quot;sitemap.xml&quot; and provide it within the root directory of your website (as some search engines automatically seek it there).</p>
<p>It&#8217;s also worth noting that while you can submit your Sitemap file location directly to search engines, adding the non-standard <code>Sitemap</code> directive to your robots.txt file can be useful as it&#8217;s widely supported and gives spiders a push in the right direction.</p>
<p>Below is a basic example of how a Sitemap looks like.</p>
<pre>
 &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
 &lt;urlset xmlns=&quot;http://www.sitemaps.org/schemas/sitemap/0.9&quot;&gt;
 &lt;url&gt;&lt;loc&gt;index.html&lt;/loc&gt;&lt;/url&gt;
 &lt;url&gt;&lt;loc&gt;contact.html&lt;/loc&gt;&lt;/url&gt;
 &lt;/urlset&gt;
</pre>
<p>Each Sitemap file begins with a Document Type Definition (DTD) that states that the file is UTF-8 encoded, written in XML, and uses the <a href="http://www.sitemaps.org/protocol.php">official Sitemap schema</a>.</p>
<p>Following those formalities, you simply produce a list of your  URLs that exist within your website&#8217;s structure.</p>
<p>Each URL must be contained within two elements: <code>&lt;url&gt;</code> and <code>&lt;loc&gt;</code>. This is a very simple specification to follow, so even less experienced developers should be able to replicate this basic mechanism with little effort.</p>
<p>To reference your Sitemap inside your HTML documents, place this code between the <code>&lt;head&gt;</code> tags:</p>
<pre>
 &lt;head&gt;
 &lt;link rel=&quot;sitemap&quot; type=&quot;application/xml&quot; title=&quot;Sitemap&quot; href=&quot;sitemap.xml&quot; /&gt;
 &lt;head&gt;
</pre>
<p><img src="http://images.sixrevisions.com/2010/07/04-09_sitemapdotorg.png" width="550" height="280" alt="Just like most XML-based schemas, there is a protocol and specification to follow." /><span class="figure-caption">Just like most XML-based schemas, there is a protocol and specification to follow.</span></p>
<h4>Other Sitemap Tags</h4>
<p>While you could limit yourself to simply listing every file, there are a number of other meta-information that can be included within the <code>&lt;url&gt;</code> tag to help further define how spiders deal with or treat each page in the site &#8212; and this is where the Sitemap&#8217;s true power lies.</p>
<p>You can use <code>&lt;lastmod&gt;</code>, for example, to state when the resource was last modified (formatted using YYYY-MM-DD). You can add the <code>&lt;changefreq</code>&gt; element, which uses values of <code>always</code>, <code>hourly</code>, <code>daily</code>, <code>weekly</code>, <code>monthly</code>, <code>yearly</code>, and <code>never</code> to suggest how often a web page changes (for example, the front page of Six Revisions has a value of <code>daily</code>).</p>
<p>There is also the <code>&lt;priority&gt;</code> tag, which uses a scale of 0.0 to 1.0 that you can utilize to indicate how important a web page is to a website.</p>
<p>Here&#8217;s an example of using the above tags:</p>
<pre>
 &lt;lastmod&gt;2010-05-13&lt;/lastmod&gt;
 &lt;changefreq&gt;monthly&lt;/changefreq&gt;
 &lt;priority&gt;0.8&lt;/priority&gt;
</pre>
<p><img src="http://images.sixrevisions.com/2010/07/04-10_googlewebmastertools.png" width="550" height="230" alt="Google allows you to submit your Sitemap to initiate its analysis of your site structure." /><span class="figure-caption">Google Webmaster Tools allows you to submit your Sitemap to initiate its analysis of your site structure.</span></p>
<h3>Dublin.rdf</h3>
<p>Ensuring you provide metadata has become big business among <a href="http://sixrevisions.com/web_design/improve-seo-website-design/" title="9 Ways To Improve the SEO of Every Website You Design - sixrevisions.com">SEO</a> professionals and semantics advocates. The appropriate use of HTML, metadata, microformats and well-written content improves the chances of appearing in the right search results. They also allow an increasing number of browsers and social networks to aggregate and filter the data so that they can accurately understand what your content represents.</p>
<p>The Dublin.rdf file acts as a container for officially recognised meta elements (provided by the <a href="http://dublincore.org/" title="DCMI Home - dublincore.org">DCMI</a> specification) which can augment the semantic value of the media you provide.</p>
<p>If you&#8217;ve ever visited a library and tried to locate a book, you know that you will often have to flick through the library catalogs to find books based on their subject, their author, or perhaps even their title. The aim of the DCMI is to produce such a reference card for your website that will help search engines, social networks, web browsers, and other web technologies understand what your site is.</p>
<p><img src="http://images.sixrevisions.com/2010/07/04-11_mechanics_dublin.png" width="550" height="200" alt="This is how the Dublin.rdf file interacts with supporting social networking mediums." /><span class="figure-caption">This is how the Dublin.rdf file interacts with supporting social networking mediums.</span></p>
<h4>Creating a Dublin.rdf File</h4>
<p>To begin, you need to produce the file itself (which we shall name &quot;Dublin.rdf&quot;). In order to maintain consistent meta details about the site (as opposed to individual DCMI meta tags for specific pages and resources), we shall create an <a href="http://www.fileinfo.com/extension/rdf">RDF file</a> (formatted as XML) with a reference within the HTML document to indicate that the information is available. While you can embed DCMI meta tags within HTML, RDF allows you to cache the data.</p>
<p><img src="http://images.sixrevisions.com/2010/07/04-13_rdfsite.jpg" width="550" height="290" alt="This is how the OpenSearch file interacts with your site through the browser." /></p>
<p>When a supporting spider or other resource that acknowledges the DCMI core sees the file, they can cache and directly relate to the information.</p>
<p>This doesn&#8217;t mean you shouldn&#8217;t use traditional meta tags, but the file can serve as a useful supplement.</p>
<pre>
 &lt;?xml version=&quot;1.0&quot;?&gt;
 &lt;rdf:RDF xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot; xmlns:dc= &quot;http://purl.org/dc/elements/1.1/&quot;&gt;
 &lt;rdf:Description rdf:about=&quot;http://www.yoursite.com/&quot;&gt;
 &lt;dc:contributor&gt;Your Name&lt;/dc:contributor&gt;
 &lt;dc:date&gt;2008-07-26&lt;/dc:date&gt;
 &lt;dc:description&gt;This is my website.&lt;/dc:description&gt;
 &lt;dc:language&gt;EN&lt;/dc:language&gt;
 &lt;dc:publisher&gt;Company&lt;/dc:publisher&gt;
 &lt;dc:source&gt;http://www.yoursite.com/&lt;/dc:source&gt;
 &lt;/rdf:Description&gt;
 &lt;/rdf:RDF&gt;
</pre>
<p>Like most XML files, this RDF document has a DTD &#8212; and within that, you have the description element (which links to the resource being referenced).</p>
<p>Within the description, as you can see from the above, there are several elements (beginning with the prefix of <code>dc:</code>) &#8212; these hold the metadata of the page.</p>
<p>There&#8217;s a whole range of terms you can add (see this list of <a href="http://dublincore.org/documents/dcmi-terms/">DCMI metadata terms</a>), it&#8217;s simply a case of adding the term&#8217;s name, then giving a value as denoted by the DCMI specification. You&#8217;ll end up with a library of useful data that can improve your site&#8217;s semantics and interoperability with other sites and applications!</p>
<p>To make this file work properly, place the following code into every HTML document within the <code>&lt;head&gt;</code> tags:</p>
<pre>
 &lt;head&gt;
 &lt;link rel=&quot;meta&quot; type=&quot;application/rdf+xml&quot; title=&quot;Dublin&quot; href=&quot;dublin.rdf&quot; /&gt;
 &lt;head&gt;
</pre>
<p><img src="http://images.sixrevisions.com/2010/07/04-12_rdf_example.png" width="550" height="240" alt="This is how the OpenSearch file interacts with your site through the browser." /><span class="figure-caption">The Dublin.rdf file makes use of the DCMI specification to provide meta information.</span></p>
<h3>OpenSearch.xml</h3>
<p>The ability to search a website is one of the most important ways people locate content.</p>
<p>The <a href="http://www.opensearch.org/Home">OpenSearch</a> file allows you to add a custom search engine listing (on your own site) through the search feature that appears in all modern browsers. All of the major browsers can take advantage of OpenSearch; it&#8217;s pretty durable.</p>
<p>While you will still want to provide a search mechanism on your website, this core enhancement complements the user&#8217;s in-browser search capabilities.</p>
<p><img src="http://images.sixrevisions.com/2010/07/04-14_opensearch_mechanics.png" width="550" height="200" alt="This is how the OpenSearch file interacts with your site through the browser." /><span class="figure-caption">This is how the OpenSearch file interacts with your site through the browser.</span></p>
<p>Like with all things we&#8217;ve discussed thus far, we need to produce the file for the code to be placed in.</p>
<p>As this particular type of file doesn&#8217;t have assumed name reservations like robots.txt or sitemap.xml, we could call the file whatever we like. However, the convention for OpenSearch files is to name the file, &quot;opensearch.xml&quot;.</p>
<p>You&#8217;ll want to include the code below as your starting template, then proceed to customising the required tags such as <code>&lt;ShortName&gt;</code>, <code>&lt;Url&gt;</code> and <code>&lt;Description&gt;</code> (they are case-sensitive) to describe your site.</p>
<p>The example used below is for Six Revisions using Google Search.</p>
<pre>
 &lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&gt;
 &lt;OpenSearchDescription xmlns=&quot;http://a9.com/-/spec/opensearch/1.1/&quot;&gt;
 &lt;ShortName&gt;Six Revisions&lt;/ShortName&gt;
 &lt;Description&gt;Search this website.&lt;/Description&gt;
 &lt;Image&gt;favicon.ico&lt;/Image&gt;
 &lt;Url type=&quot;text/html&quot; template=&quot;http://www.google.com/search?sitesearch=http%3A%2F%2Fwww.sixrevisions.com%2F&amp;amp;as_q={searchTerms}&quot;/&gt;
 &lt;/OpenSearchDescription&gt;
</pre>
<p>The tags included above are:</p>
<ul>
<li><strong>ShortName:</strong> the title you want for your search extension</li>
<li><strong>Description:</strong> explains the purpose of the search box</li>
<li><strong>Image:</strong> this isn&#8217;t required like the others, but I recommend referencing your Favicon with it so the search feature has a unique icon</li>
<li><strong>Url:</strong> requires a MIME type and a template attribute which links to the search terms</li>
</ul>
<p>To make this file work properly, place the following code into every page within the <code>&lt;head&gt;</code> tag:</p>
<pre>
 &lt;link rel=&quot;search&quot; type=&quot;application/opensearchdescription+xml&quot; title=&quot;Website&quot; href=&quot;opensearch.xml&quot; /&gt;
</pre>
<p><img src="http://images.sixrevisions.com/2010/07/04-15_opensearch_site.png" width="550" height="270" alt="This is how the OpenSearch file interacts with your site through the browser." /></p>
<h4>Other OpenSearch Tags</h4>
<p>There&#8217;s a range of additional tags we can provide. Among these are:</p>
<ul>
<li><strong>AdultContent:</strong> if the site has adult material needing to be filtered, set to <code>false</code></li>
<li><strong>Attribution:</strong> your copyright terms</li>
<li><strong>Contact:</strong> an email address for the point-of-contact of your site</li>
<li><strong>Developer:</strong> who made the site?</li>
<li><strong>InputEncoding and OutputEncoding:</strong> The MIME type used</li>
<li><strong>Language:</strong> i.e. <code>EN</code> for English</li>
<li><strong>Query:</strong> for more detailed search terms</li>
<li><strong>Tags:</strong> keywords, separated by a space</li>
<li><strong>SyndicationRight:</strong> The degree to which people can request, display or send results</li>
</ul>
<p>Example usage of these other tags:</p>
<pre>
 &lt;AdultContent&gt;false&lt;/AdultContent&gt;
 &lt;Attribution&gt;Copyright, Your Name 2010, Some Rights Reserved.&lt;/Attribution&gt;
 &lt;Contact&gt;None@none.com&lt;/Contact&gt;
 &lt;Developer&gt;Your Name&lt;/Developer&gt;
 &lt;InputEncoding&gt;UTF-8&lt;/InputEncoding&gt;
 &lt;Language&gt;en-us&lt;/Language&gt;
 &lt;OutputEncoding&gt;UTF-8&lt;/OutputEncoding&gt;
 &lt;Query role=&quot;example&quot; searchTerms=&quot;terms&quot; /&gt;
 &lt;Tags&gt;Example Tags Element Website&lt;/Tags&gt;
 &lt;SyndicationRight&gt;open&lt;/SyndicationRight&gt;
</pre>
<p><img src="http://images.sixrevisions.com/2010/07/04-16_opensearch_example.png" width="550" height="150" alt="This is how the OpenSearch file interacts with your site through the browser." /></p>
<h3>Simple, Small and Effective</h3>
<p>While this guide represents a crash course in producing these useful files, it&#8217;s worth pointing out that taking the time to understand the <a href="http://sixrevisions.com/web-technology/web-languages-decoded/">syntax of any language</a> is important in order to determine what the impact of these files on your website.</p>
<p>These files represent a truth that there&#8217;s more to a website than HTML, CSS, and JavaScript, and while producing these files will certainly not act as a replacement for your existing code workflow, their inherent benefits make them worthy of consideration to supplement your projects. Give them a try for yourself!</p>
<h3>Related Content</h3>
<ul>
<li><a href="http://sixrevisions.com/tools/the-top-15-google-products-for-people-who-build-websites/">The Top 15 Google Products for People Who Build Websites</a></li>
<li><a href="http://sixrevisions.com/infographics/performance-comparison-of-major-web-browsers/">Performance Comparison of Major Web Browsers</a></li>
<li><a href="http://sixrevisions.com/web-development/five-ways-to-speed-up-page-response-times/">Five Ways to Speed Up Page Response Times</a></li>
<li><em>Related categories</em>: <a href="http://sixrevisions.com/category/web-development/">Web Development</a> and <a href="http://sixrevisions.com/category/website-management/">Website Management</a></li>
</ul>
<h3>About the Author</h3>
<p class="about-author"><img src="http://images.sixrevisions.com/authors/alexander_dawson_small.jpg" alt="" width="80" height="80" /><span class="author-bio-text"><strong>Alexander Dawson</strong> is a freelance web designer, author and recreational software developer specializing in web standards, accessibility and UX design. As well as running a business called <strong><a href="http://www.hitechy.com/">HiTechy</a></strong> and writing, he spends time on <strong><a href="http://twitter.com/AlexDawsonUK">Twitter</a></strong>, SitePoint&#8217;s forums and other places, helping those in need.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://sixrevisions.com/web-standards/5-web-files-that-will-improve-your-website/feed/</wfw:commentRss>
		<slash:comments>77</slash:comments>
		</item>
		<item>
		<title>Problems with Using Website Validation Services</title>
		<link>http://sixrevisions.com/web-standards/problems-with-using-website-validation-services/</link>
		<comments>http://sixrevisions.com/web-standards/problems-with-using-website-validation-services/#comments</comments>
		<pubDate>Mon, 07 Jun 2010 13:23:06 +0000</pubDate>
		<dc:creator>Jacob Gube</dc:creator>
				<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://sixrevisions.com/?p=3426</guid>
		<description><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3426&c=1433008250' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3426&c=1433008250' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br />Amongst the basic skills that fledgling designers and developers should know is the art of website validation. Website validation consists of using a series of tools such as W3C&#8217;s Markup Validation Service that can actively seek out and explain the problems and inconsistencies within our work. While the use of such tools has benefits (in [...]]]></description>
			<content:encoded><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3426&c=287309517' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=3426&c=287309517' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br /><p><a href="http://sixrevisions.com/web-standards/problems-with-using-website-validation-services/"><img src="http://images.sixrevisions.com/2010/06/05-12_problem_validation_services.png" width="550" height="200" alt="Problems with Using Website Validation Services" /></a></p>
<p>Amongst the basic skills that fledgling designers and developers should know is the <strong>art</strong> of website validation.</p>
<p><strong>Website validation</strong> consists of using a series of tools such as W3C&#8217;s <a href="http://validator.w3.org/">Markup Validation Service</a> that can actively seek out and explain the problems and inconsistencies within our work.</p>
<p><span id="more-3426"></span></p>
<p>While the use of such tools has benefits (in the sense of being an automated fresh pair of eyes), a <strong>worrying trend of either over or under-dependence keeps rearing its ugly head</strong>.</p>
<p>This article aims to underpin the inherent <strong>issues of validating your websites through automated web services/tools</strong> and how using these tools to meet certain requirements can miss the point entirely.</p>
<h3>Current Practices</h3>
<p>Before we begin critiquing the valiant efforts that our noble code validators undertake (they have good intentions at least), it&#8217;s important to note that with all things in life, a balance must be struck between the <strong>practical application of validation</strong> and <strong>common sense.</strong></p>
<p>We live in a modern era of enlightened thought where web standards have become a white knight, always charging towards slaying code which fails to best represent our work.</p>
<p>But while current practices actively request and promote using these validation tools, no web-based tool is a substitute for <a href="http://sixrevisions.com/project-management/adopting-a-does-it-really-matter-philosophy/" title="The 'Does It Really Matter'? Philosophy for web development takes good judgement over automated web services. - sixrevisions.com">good judgment</a>.</p>
<p><img src="http://images.sixrevisions.com/2010/06/05-01_invalid_code.png" width="550" height="300" alt="Current Practices" /><span class="figure-caption">The above code may not validate, but it&#8217;s acceptable to use if there&#8217;s no good alternative.</span></p>
<h4>Not Using Valid Code</h4>
<p>The case for under-dependence can be seen by examining the <a href="http://www.alexa.com/topsites/countries">Alexa Top 100 sites</a> and using some basic W3C validation tests.</p>
<p>The eye-watering number of errors these popular sites produce (which escalate into the hundreds) is rather unsettling for some.</p>
<p>The problems for those ignoring validation altogether has been well-documented to the detriment of end users (as has the justification for following web standards) and <strong>as ignoring validation entirely makes you as guilty as those using it as a crutch</strong>, it&#8217;s worth recommending not to forsake these tools even with their shortcomings.</p>
<p><img src="http://images.sixrevisions.com/2010/06/05-02_validation_errors.png" width="550" height="296" alt="Amazon's front page doesn't validate, but it doesn't mean they don't care." /><span class="figure-caption">Amazon.com&#8217;s front page doesn&#8217;t validate, but it doesn&#8217;t mean they don&#8217;t care.</span></p>
<h4>Blindly Following the &quot;Rules&quot;</h4>
<p>The case for overdependence is something we need to worry about too. Those who form drug-like addictions to making everything validate or meet a certain criteria just to please an innate need for approval are on the rise.</p>
<p>While ensuring your code validates is generally a good thing, there are professionals who take it to such an extent that they resort to hacking their code to pieces, ignoring new and evolving standards or breaking their designs just to get the &quot;valid&quot; confirmation. Quite a price for a <a href="http://venturas.org/badges.html">badge</a>.</p>
<p>And there are even people who think validation automatically means everything&#8217;s perfect, which is worse.</p>
<p><img src="http://images.sixrevisions.com/2010/06/05-03_badges_of_honour.png" width="550" height="250" alt="There are a lot of tools out there, but you should be wary about which you rely upon." /><span class="figure-caption">There are a lot of tools out there, but you should be wary about which you rely upon.</span></p>
<h3>Context is King</h3>
<p>The thing about validation tools that beginners (and some seasoned professionals) often overlook is the <strong>value of context.</strong></p>
<p>The most common problem that validation tools encounter can be summed up in the sense that they are <strong>only machines</strong>, not humans.</p>
<p>You see, while checking if the code you wrote is written correctly, on the surface, may seem like a simple task, that sites meet disabled users&#8217; needs, or that text on the screen is translated properly — the very <strong>obvious truth</strong> (for those who understand the mechanics involved) is that the complexity of how <strong>humans adapt</strong> cannot be replicated effectively.</p>
<p><img src="http://images.sixrevisions.com/2010/06/05-04_design_instruct.png" width="550" height="300" alt="What does this design say to a machine? Nothing! It only sees the code and that's it." /><span class="figure-caption">What does this design say to a machine? Nothing! It only sees the code and that&#8217;s it. </span></p>
<h4>You Can Make Decisions That Robots Can&#8217;t</h4>
<p>If you&#8217;ve seen the &quot;<em>The Terminator</em>&quot; movie, you probably have a mental image of a not-too-distant future where machines can think like humans and therefore make decisions based on <strong>adaptive thought processes</strong>, such as being able to intelligently and emotively know what makes sense.</p>
<p>But <em>unlike</em> that film, the levels of which such tools can understand context and meaning (beyond what&#8217;s physically there) simply doesn&#8217;t exist today—though that&#8217;s probably a good thing as we don&#8217;t want the W3C validator going on a rampaging killing spree against <code>&lt;blink&gt;</code> tag users, right?</p>
<p><img src="http://images.sixrevisions.com/2010/06/05-05_smart_as_us.png" width="550" height="360" alt="There may be a time where machines are as smart as humans, but that's not today." /><span class="figure-caption">There may be a time where machines are as smart as humans, but that&#8217;s not today.</span></p>
<h3>Code Validation</h3>
<p>The most notable form of code validation in use today is that of the W3C <a href="http://validator.w3.org/">HTML</a> and <a href="http://jigsaw.w3.org/css-validator/">CSS</a> validators.</p>
<p>The level of obedience from some designers and developers to ensure their code validates is best reflected in the way many websites actually proclaim (through the use of badges) to the end user that their code is perfect (possibly to the point of sterility).</p>
<p><img src="http://images.sixrevisions.com/2010/06/05-06_validity.png" width="550" height="139" alt="Proclaiming the validity of your code doesn't mean what you've produced is perfect." /><span class="figure-caption">Proclaiming the validity of your code doesn&#8217;t mean what you&#8217;ve produced is perfect.</span></p>
<p>This reminds me of the way software developers proclaim awards from download sites as justification to use their product. As I&#8217;ve mentioned previously, however, the W3C validator (despite its association) is <strong>not perfect.</strong></p>
<h4>Failing Because of Future Standards</h4>
<p>It&#8217;s an established fact that the W3C validator not only examines the structure of your site but the elements or properties themselves (though they don&#8217;t understand semantic value!).</p>
<p>The key issue with such due diligence from these tools is that elements which are not recognised (such as those of <strong>upcoming standards like CSS3</strong> or equally <strong>valid proprietary extensions</strong>) are often misinterpreted by developers as &quot;unusable&quot; or &quot;not approved&quot; and therefore get rejected.</p>
<h4>Taking Stuff Out For The Sake of a Badge</h4>
<p>It seems rather amusing to me that people are willing to omit the value of somewhat acceptable but non-standard code — CSS3 attributes specific to particular browsers, for example — to satisfy the validators, like they&#8217;re trying not to anger the Tiki gods.</p>
<p>What ends up happening is the validators themselves make it seem like <strong>legitimate practices which defies convention are automatically wrong</strong>, and this results in a strange psychological condition in which people too quickly limit their own actions for the sake of a machine (or the ideology it provides).</p>
<p>While it makes sense not to use deprecated/future-standards code, validators simply can only test against what they know.</p>
<p><img src="http://images.sixrevisions.com/2010/06/05-07_badgies.png" width="550" height="128" alt="Nothing says: &quot;I want approval&quot; like these well-known badges of honour from the W3C." /><span class="figure-caption">Nothing says: &quot;I want approval&quot; like these well-known badges of honour from the W3C.</span></p>
<p>It should be made quite clear that people who proclaim HTML and CSS validation on the page are doing so to make themselves feel better. Unfortunately, none of your users (unless you cater specifically and strictly to web designers and developers) are likely to know what HTML even is, let alone understand or trust what the fancy validator badge is telling them!</p>
<h3>Web Accessibility Validation</h3>
<p>If you want a case where validators totally miss the point and where their limited testing ability is abused (to proclaim the work which is being tested against is complete), you need look no further than the <strong>accessibility validation services</strong> like Cynthia, the now debunked &quot;Bobby&quot; and their kin.</p>
<p>One key issue with validators are that they can only test against what they can see (in almost all cases this only accounts for source code).</p>
<p>While some of the issues in WCAG can be resolved with some helpful coding (like <code>alt</code> attributes on images), code doesn&#8217;t account for everything in accessibility.</p>
<p><img src="http://images.sixrevisions.com/2010/06/05-08_web_criteria.png" width="550" height="150" alt="Cynthia &quot;says&quot; your site meets WCAG guidelines, but it's often missing several points!" /><span class="figure-caption">Cynthia &quot;says&quot; your site meets WCAG guidelines, but it&#8217;s often missing several points!</span></p>
<h4>The Only Way to Test for Accessibility and Usability is through People</h4>
<p>Accessibility and usability are highly subjective issues that affect many people in many different ways, and often the way code is presented (or even the content) does not establish where key problems may lie.</p>
<p>Too often beginners actively use the checklist nature of these services to claim their work is accessible on the basis that a validator covered what it could (omitting the complexities which it cannot account for – such as the sensory criteria and their inhibiting factors). This key lack of understanding and the wish for a quick fix showcases that reliance of these tools isn&#8217;t ideal.</p>
<p>How many validators can tell you how easy to read your content is? How many of them run a screen reader over the top of your site to denote the way a blind user may find your information?</p>
<p>While some factors can be mechanically replicated, the problem is the tools primarily focus on code alone and therefore miss the bigger picture (and those who rely on them also get caught up in this lack of awareness).</p>
<p>Without the background knowledge of how such web or software applications function, a scary number of people simply use them as an alternative to properly learning what they&#8217;re doing.</p>
<p><img src="http://images.sixrevisions.com/2010/06/05-09_lorem_ipsum.png" width="550" height="342" alt="Do you speak Latin? No? This content would pass as accessible, readable and valid!" /><span class="figure-caption">Do you speak Latin? No? This content would pass as accessible, readable and valid!</span></p>
<p>The state of accessibility tools is so bad that I advise people not to use them in favour of proper human checking.</p>
<p>The <strong>myth</strong> that tools can do things at an equal skill level of a human is far from the truth and while the W3C validators can be helpful, accessibility tools are too biased to be credited.</p>
<h3>Translation Troubles</h3>
<p>Confusion (as denoted above) in relation to such validation tools comes in many forms. Whether it&#8217;s the mystical messages the W3C validator produces (which beginners may not understand), the lack of fair warning that these tools should be used &quot;as part of a balanced diet&quot;, or that these tools are often much more limited in what they can offer than you would be led to believe.</p>
<p>One of the more comical examples of automated tools going crazy can be seen through translation tools such as those provided by Babel fish or Google, which again proves that nothing is better than humans.</p>
<p><img src="http://images.sixrevisions.com/2010/06/05-10_google_translate.png" width="550" height="287" alt="Google Translate is popular amongst websites for giving &quot;rough&quot; language translations." /><span class="figure-caption">Google Translate is popular amongst websites for giving &quot;rough&quot; language translations.</span></p>
<p>One of the key elements of human languages is that words can have more than one meaning (and deciding which instance is in use can be tricky for machines – a case of context).</p>
<p>In accessibility, the issues of vision can be anything from total loss of eyesight right down to a case of color blindness. Because of this, a language translator will simply go for a literal meaning of the word rather than the context in which it&#8217;s used which can reduce your content into a scrambled illegible mess which doesn&#8217;t help your visitors (especially if they have learning difficulties).</p>
<p>While of course translation tools <strong>aren&#8217;t</strong> code validators, they do in fact <strong>perform a similar service.</strong> By taking a known list of criteria (whether code, words or something else), they attempt to check that something accurately portrays what it&#8217;s intended to.</p>
<p>If, however, you use something it doesn&#8217;t expect (like a new word in translation tools or a new property in the W3C validator), it will report it as a failing on your behalf.</p>
<p>Such reliance on validation tools for &quot;perfect&quot; results is therefore unjustified and can limit yourself to the detriment of your audience.</p>
<h4>A Translation Exercise to Test the Idea</h4>
<p>If you take a block of content from a website, paste it into <a href="http://translate.google.com/">Google Translate, </a> translate it to another language, and then translate it back into English, you&#8217;ll see for yourself how badly these validators of content conversion are at the job. It can give you hours (if you&#8217;re really <em>that</em> much of a geek) of comedy in a few sessions!</p>
<p><img src="http://images.sixrevisions.com/2010/06/05-11_lost_in_translation.png" width="550" height="300" alt="See how the same sentence has been wrongly translated? It's not uncommon!" /><span class="figure-caption">See how the same sentence has been wrongly translated? It&#8217;s not uncommon!</span></p>
<h3>The Silver Bullet</h3>
<p>Knowing that <strong>validation tools are far from perfect</strong> is an important lesson to learn. Many people assume that such tools are an all-knowing oracle that accounts for everything your users or browsers may suffer.</p>
<p>While it&#8217;s <strong>wrong to say that these tools aren&#8217;t useful</strong>, it&#8217;s important to understand that the validation tools should not be used as a <strong>guarantee of accuracy</strong>, <strong>conformance</strong> or <strong>accessibility</strong> (in your visitor&#8217;s best interests).</p>
<p>A valid site should never be achieved if it sacrifices the progression of web standards, unjustly acts as a badge of honour or attempts to justify the end of the build process.</p>
<p>Knowing how and when to use code and the difference <a href="http://sixrevisions.com/project-management/adopting-a-does-it-really-matter-philosophy/">between right and wrong</a> is a tough process we all undergo during our education.</p>
<p>The truth about validators is that <strong>sometimes being invalid is the right thing to do</strong>, and there are many occasions where a &quot;valid&quot; website is nowhere near as valid as you might like to <em>think</em> it is in terms of code semantics, accessibility or the user experience.</p>
<p>I hope that all of this will serve as a wakeup call to the generation of coders who either ignore or abuse validation services. These tools are <strong>not a silver bullet</strong> or a substitute for being human!</p>
<h3>Related Content</h3>
<ul>
<li><a href="http://sixrevisions.com/web-development/five-technologies-that-will-keep-shaping-the-web-in-2010/">Five Technologies That Will Keep Shaping the Web in 2010</a></li>
<li><a href="http://sixrevisions.com/user-interface/best-practices-for-hints-and-validation-in-web-forms/">Best Practices for Hints and Validation in Web Forms</a></li>
<li><a href="http://sixrevisions.com/web-development/what-is-the-future-of-web-development/">What is The Future of Web Development?</a></li>
<li><em>Related categories</em>: <a href="http://sixrevisions.com/category/web-standards/">Web Standards</a> and <a href="http://sixrevisions.com/category/web-development/">Web Development</a></li>
</ul>
<h3>About the Author</h3>
<p class="about-author"><img src="http://images.sixrevisions.com/authors/alexander_dawson_small.jpg" alt="" width="80" height="80" /><span class="author-bio-text"><strong>Alexander Dawson</strong> is a freelance web designer, author and recreational software developer specializing in web standards, accessibility and UX design. As well as running a business called <strong><a href="http://www.hitechy.com/">HiTechy</a></strong> and writing, he spends time on <strong><a href="http://twitter.com/AlexDawsonUK">Twitter</a></strong>, SitePoint&#8217;s forums and other places, helping those in need.</span></p>
]]></content:encoded>
			<wfw:commentRss>http://sixrevisions.com/web-standards/problems-with-using-website-validation-services/feed/</wfw:commentRss>
		<slash:comments>27</slash:comments>
		</item>
		<item>
		<title>20 Useful Resources for Learning about CSS3</title>
		<link>http://sixrevisions.com/css/20-useful-resources-for-learning-about-css3/</link>
		<comments>http://sixrevisions.com/css/20-useful-resources-for-learning-about-css3/#comments</comments>
		<pubDate>Wed, 28 Jan 2009 14:58:20 +0000</pubDate>
		<dc:creator>Jacob Gube</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Resources]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://sixrevisions.com/?p=375</guid>
		<description><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=375&c=510529634' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=375&c=510529634' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br />Though W3C&#8217;s CSS3 specifications aren&#8217;t finalized yet, modern web browsers such as Mozilla Firefox, Opera, and WebKit-based browsers already have full or partial support for them. As a web developer, it&#8217;s crucial to be well-informed about modern and future web standards. To help you stay ahead of the curve &#8211; here are 20 excellent resources [...]]]></description>
			<content:encoded><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=375&c=1923907743' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=375&c=1923907743' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br /><p>Though W3C&#8217;s CSS3 specifications aren&#8217;t finalized yet,  modern web browsers such as Mozilla Firefox, Opera, and WebKit-based browsers  already have full or partial support for them.</p>
<p>As a web developer, it&#8217;s crucial to be well-informed about modern  and future web standards. To help you stay ahead of the curve &#8211; here are <strong>20 excellent resources on the topic of CSS3</strong>.</p>
<h3>1. <a href="http://www.w3.org/Style/CSS/current-work">CSS3 Progress Report</a></h3>
<p><a href="http://www.w3.org/Style/CSS/current-work"><img src="http://images.sixrevisions.com/2009/01/24-01_css_progress_report.png" alt="CSS3 Progress Report - screen shot." width="550" height="230" /></a></p>
<p><span id="more-375"></span></p>
<p>The <em>CSS3 Progress Report</em> is a web page by the <a href="http://www.w3.org/Style/CSS/current-work">CSS  Working Group</a> outlining the current status of all the CSS3 modules. For  would-be contributors, this may be a helpful resource in discovering places  where you can potentially <a title="If you want to help section on W3C CSS: Current Work page." href="http://www.w3.org/Style/CSS/current-work#contribute">contribute</a>.</p>
<h3>2. <a href="http://www.webmonkey.com/tutorial/Get_Started_with_CSS_3">Get  Started with CSS 3</a></h3>
<p><a href="http://www.webmonkey.com/tutorial/Get_Started_with_CSS_3"><img src="http://images.sixrevisions.com/2009/01/24-02_getting_started_css3.png" alt="Get Started with CSS 3 - screen shot." width="550" height="230" /></a></p>
<p>Web Monkey has a tutorial on how to get started with CSS3.  It will give you an overview of some CSS3 features that are already supported  by modern browsers. This is a great article to read for those that are just  beginning to explore CSS3.</p>
<h3>3. <a href="http://dev.opera.com/articles/view/progressive-enhancement-with-css-3-a-be/">Progressive  Enhancement with CSS 3</a></h3>
<p><a href="http://dev.opera.com/articles/view/progressive-enhancement-with-css-3-a-be/"><img src="http://images.sixrevisions.com/2009/01/24-03_progressive_enhancement_css3.png" alt="Progressive Enhancement with CSS 3 - screen shot." width="550" height="230" /></a></p>
<p>Opera – one of the web browsers in the forefront of  supporting CSS3 specs – has an excellent tutorial on a <a title="Wikipedia entry on Progressive enhancement." href="http://en.wikipedia.org/wiki/Progressive_enhancement">progressive enhancement</a> approach to CSS3 usage that discusses how you can utilize CSS3 for  modern/cutting-edge browsers yet still have a design that&#8217;s accessible to older  browsers that don&#8217;t support it.</p>
<h3>4. <a href="http://www.w3.org/TR/CSS-access">Accessibility Features of CSS</a></h3>
<p><a href="http://www.w3.org/TR/CSS-access"><img src="http://images.sixrevisions.com/2009/01/24-04_accessibility_css3.png" alt="Accessibility Features of CSS - screen shot." width="550" height="230" /></a></p>
<p>With the rise in popularity of mobile hand held devices and  non-traditional web browsers such as screen readers, the <a title="CSS Working Group Members page." href="http://www.w3.org/Style/CSS/members.php3">CSS Working Group</a> puts accessibility  as one of the leading issues that will be addressed in CSS3. This W3C document  outlines some of the accessibility features and considerations that are inherent  in current and future CSS3 specifications.</p>
<h3>5. <a href="http://designshack.co.uk/tutorials/introduction-to-css3-part-1-what-is-it">Introduction  to CSS3</a> (Design Shack)</h3>
<p><a href="http://designshack.co.uk/tutorials/introduction-to-css3-part-1-what-is-it"><img src="http://images.sixrevisions.com/2009/01/24-05_introduction_css3.png" alt="Introduction to CSS3 (Design Shack) - screen shot." width="550" height="230" /></a></p>
<p>In this 5-part series, Design Shack gives readers an  excellent induction to the world of CSS3. The article series goes through an overview  of CSS3 in plain-speak and talks about some CSS3 techniques and topics such as <a href="http://designshack.co.uk/tutorials/introduction-to-css3-part-2-borders">borders</a> and <a href="http://designshack.co.uk/tutorials/introduction-to-css3-part-3-text-effects">text  effects</a>.</p>
<h3>6. <a href="http://www.css3.info/">CSS3 . Info</a></h3>
<p><a href="http://www.css3.info/"><img src="http://images.sixrevisions.com/2009/01/24-06_css3_info.png" alt="CSS3 . Info - screen shot." width="550" height="230" /></a></p>
<p><em>CSS3 . Info</em> is an enormously  comprehensive site about all things CSS3-related. They share news, interviews,  and resources from around the web regarding CSS3. CSS3 . Info also has a demo  section called <a href="http://www.css3.info/preview/">CSS3 Previews</a> so  that you can see CSS3 modules and features at work for browsers that support  them such as <a href="http://www.opera.com/">Opera</a> and <a href="http://webkit.org/">WebKit-based browsers</a>.</p>
<h3>7. <a href="http://www.w3.org/TR/css3-layout/">CSS Advanced Layout Module</a></h3>
<p><a href="http://www.w3.org/TR/css3-layout/"><img src="http://images.sixrevisions.com/2009/01/24-07_css3_advanced_layout.png" alt="CSS Advanced Layout Module - screen shot." width="550" height="230" /></a></p>
<p>Learn about one of the more <a title="John Resig blog post entitled CSS3 Template Layout." href="http://ejohn.org/blog/css3-template-layout/">popular</a> modules  in CSS 3 specs: the Advanced Layout Module. This resource is W3C&#8217;s working  draft and will show you just how great CSS3 will be for us developers.</p>
<h3>8. <a href="http://sixrevisions.com/interviews/six-questions-eric-meyer-on-css3/http:/sixrevisions.com/interviews/six-questions-eric-meyer-on-css3/">Six  Questions: Eric Meyer on CSS3</a></h3>
<p><a href="http://sixrevisions.com/interviews/six-questions-eric-meyer-on-css3/http:/sixrevisions.com/interviews/six-questions-eric-meyer-on-css3/"><img src="http://images.sixrevisions.com/2009/01/24-08_eric_meyer_css3.jpg" alt="Six Questions: Eric Meyer on CSS3 - screen shot." width="550" height="230" /></a></p>
<p>Six Revisions was fortunate enough to discuss CSS3 with  celebrated CSS expert, <a title="Eric Meyer blog." href="http://meyerweb.com/">Eric  Meyer</a>. In this interview, Eric Meyer talks about what excites him the most  about CSS3, the modular approach to CSS3 specs development, and JavaScript&#8217;s  relationship to CSS3.</p>
<h3>9. <a href="http://westciv.com/iphonetests/">CSS3 properties tests for webkit  based browsers</a></h3>
<p><a href="http://westciv.com/iphonetests/"><img src="http://images.sixrevisions.com/2009/01/24-09_css3_webkit_browsers.png" alt="CSS3 properties tests for webkit based browsers - screen shot." width="550" height="230" /></a></p>
<p>In this live demonstration, you&#8217;ll find properties currently  supported (and unsupported) by WebKit-based browsers such as Safari; it also  provides you information about iPhone&#8217;s support of these properties.</p>
<h3>10. <a href="http://fantasai.inkedblade.net/style/discuss/wasp-feedback-2008">WaSP  Community CSS3 Feedback</a></h3>
<p><a href="http://fantasai.inkedblade.net/style/discuss/wasp-feedback-2008"><img src="http://images.sixrevisions.com/2009/01/24-10_css3_feedback.png" alt="WaSP Community CSS3 Feedback - screen shot." width="550" height="230" /></a></p>
<p>This article is an excellent summary of the feedback  received from the Web Standards Project (WaSP) blog post entitled, &#8220;<a href="http://www.webstandards.org/2008/01/18/tell-the-css-wg-what-you-want-from-css3/">Tell  the CSS WG what you want from CSS3</a>&#8220;. It&#8217;s a great read to see what web  developers around the world think about current CSS3 specs.</p>
<h3>11. <a href="http://dev.opera.com/articles/view/css-3-attribute-selectors/">CSS  3 attribute selectors</a></h3>
<p><a href="http://dev.opera.com/articles/view/css-3-attribute-selectors/"><img src="http://images.sixrevisions.com/2009/01/24-11_css3_attribute_selectors.png" alt="CSS 3 attribute selectors - screen shot." width="550" height="230" /></a></p>
<p>An exciting improvement in CSS3 is the ability for very  complex and specific DOM selection. This tutorial on Dev.Opera shows you the  potentials of the new attribute selection features in CSS3.</p>
<h3>12. <a href="http://www.w3.org/TR/css3-selectors/">W3C: Selectors</a></h3>
<p><a href="http://www.w3.org/TR/css3-selectors/"><img src="http://images.sixrevisions.com/2009/01/24-12_css_w3c_selectors.png" alt="W3C: Selectors - screen shot." width="550" height="230" /></a></p>
<p>W3C&#8217;s working draft of CSS3 Selectors is an excellent  introduction into the concept of Selectors in CSS3.</p>
<h3>13. <a href="http://xhtml.com/en/css/conversation-with-css-3-team/">Conversation  with CSS 3 team</a></h3>
<p><a href="http://xhtml.com/en/css/conversation-with-css-3-team/"><img src="http://images.sixrevisions.com/2009/01/24-13_xhtml_css3_interview.png" alt="Conversation with CSS 3 team - screen shot." width="550" height="230" /></a></p>
<p>XHTML.com&#8217;s interview of <a title="Web page about Bert Bos on W3C." href="http://www.w3.org/People/Bos/">Bert  Bos</a> (former chairman of W3C&#8217;s CSS Working Group) is an insightful look at  CSS3 development through the eyes of a leading expert in CSS.</p>
<h3>14. <a href="http://mattwilcox.net/archive/entry/id/1031/">The fundamental  problems with CSS3</a></h3>
<p><a href="http://mattwilcox.net/archive/entry/id/1031/"><img src="http://images.sixrevisions.com/2009/01/24-14_fundamental_problems_css3.jpg" alt="The fundamental problems with CSS3 - screen shot." width="550" height="230" /></a></p>
<p>This article by <a title="About Matt Wilcox on Matt Wilcox .net" href="http://mattwilcox.net/about/">Matt Wilcox</a> discusses some of  the current issues surrounding CSS3.</p>
<h3>15. <a href="http://www.w3.org/blog/CSS">CSS Working Group Blog</a></h3>
<p><a href="http://www.w3.org/blog/CSS"><img src="http://images.sixrevisions.com/2009/01/24-15_w3c_working_group_blog.png" alt="CSS Working Group Blog - screen shot." width="550" height="230" /></a></p>
<p>The people in charge of maintaining and developing CSS  standards &#8211; the CSS Working Group (CSS WG)   -  has a regularly updated weblog  that shares useful information about CSS3.</p>
<h3>16. <a href="http://24ways.org/2006/rounded-corner-boxes-the-css3-way">Rounded  Corner Boxes the CSS3 Way</a></h3>
<p><a href="http://24ways.org/2006/rounded-corner-boxes-the-css3-way"><img src="http://images.sixrevisions.com/2009/01/24-16_rounded_corners_css3.jpg" alt="Rounded Corner Boxes the CSS3 Way - screen shot." width="550" height="230" /></a></p>
<p>24 Ways, an annual online publication that puts out articles  by <a title="Authors page on 24 Ways." href="http://24ways.org/authors">top web  professionals</a>, has a tutorial on rounded corner boxes written by CSS expert <a title="Andy Budd personal site." href="http://andybudd.com/">Andy Budd</a>.  The tutorial showcases one of CSS3&#8242;s styling improvements: rounded corners  without using CSS backgrounds.</p>
<h3>17. <a href="http://www.smashingmagazine.com/2009/01/08/push-your-web-design-into-the-future-with-css3/">Push  Your Web Design Into The Future With CSS3</a></h3>
<p><a href="http://www.smashingmagazine.com/2009/01/08/push-your-web-design-into-the-future-with-css3/"><img src="http://images.sixrevisions.com/2009/01/24-17_css3_push_web_design.jpg" alt="Push Your Web Design Into The Future With CSS3 - screen shot." width="550" height="230" /></a></p>
<p>Smashing Magazine&#8217;s article on CSS3 by graphic/web designer <a title="Personal site of Chris Spooner." href="http://www.chrisspooner.com/">Chris  Spooner</a> delves into crafting web designs that leverage current CSS3 specs.  It&#8217;s an inspiring scrutiny of the things that you can do with CSS3 – <em>right now</em>.</p>
<h3>18. <a href="http://www.mandarindesign.com/opacity.html#transintro">Introduction  to CSS3 Transparency</a></h3>
<p><a href="http://www.mandarindesign.com/opacity.html#transintro"><img src="http://images.sixrevisions.com/2009/01/24-18_css3_transparency.png" alt="Introduction to CSS3 Transparency - screen shot." width="550" height="230" /></a></p>
<p>This article explores and explains the concepts CSS3  transparency; a concept that&#8217;s part of the <a title="CSS Color Module Level 3 working draft on W3C." href="http://www.w3.org/TR/css3-color/">CSS Color Module</a>.</p>
<h3>19. <a href="http://dev.opera.com/articles/view/styling-forms-with-attribute-selectors/">Styling  Forms with Attribute Selectors</a></h3>
<p><a href="http://dev.opera.com/articles/view/styling-forms-with-attribute-selectors/"><img src="http://images.sixrevisions.com/2009/01/24-19_styling_forms_attribute_selectors.jpg" alt="Styling Forms with Attribute Selectors - screen shot." width="550" height="230" /></a></p>
<p>Dev.Opera showcases the benefits of attribute selectors in  this &#8220;learning-by-doing&#8221; tutorial which deals with styling web forms.</p>
<h3>20. <a href="http://nettuts.com/tutorials/html-css-techniques/5-techniques-to-acquaint-you-with-css-3/">5  Techniques to Acquaint You With CSS 3</a></h3>
<p><a href="http://nettuts.com/tutorials/html-css-techniques/5-techniques-to-acquaint-you-with-css-3/"><img src="http://images.sixrevisions.com/2009/01/24-20_5_techniques_css3.png" alt="5 Techniques to Acquaint You With CSS 3 - screen shot." width="550" height="230" /></a></p>
<p>Practice makes perfect; this tutorial from NETTUTS shows you  how to learn about CSS3 by using it. This article covers things like adding  drop shadows to page elements and changing an element&#8217;s opacity.</p>
<h3>Are you using CSS3 <em>today</em>?</h3>
<p>Have you incorporated CSS3 into your web development  practices? Where are you at in terms of learning about CSS3? Share your  thoughts and experiences with all of us in the comment section.</p>
<h3>Related content</h3>
<ul>
<li><a href="http://sixrevisions.com/css/css-tips/css-tip-1-resetting-your-styles-with-css-reset/">Resetting  Your Styles with CSS Reset</a></li>
<li><a href="http://sixrevisions.com/css/css-tips/css-tip-2-structural-naming-convention-in-css/">Structural  Naming Convention in CSS</a></li>
<li><a href="http://sixrevisions.com/css/innovative-and-experimental-css-examples-and-techniques/">Innovative  (and Experimental) CSS Examples and Techniques</a></li>
<li><a href="http://sixrevisions.com/css/css_techniques_charting_data/">8 CSS  Techniques for Charting Data</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://sixrevisions.com/css/20-useful-resources-for-learning-about-css3/feed/</wfw:commentRss>
		<slash:comments>30</slash:comments>
		</item>
		<item>
		<title>10 Tools for Evaluating Web Design Accessibility</title>
		<link>http://sixrevisions.com/web-standards/accessibility_testtools/</link>
		<comments>http://sixrevisions.com/web-standards/accessibility_testtools/#comments</comments>
		<pubDate>Thu, 28 Aug 2008 03:16:20 +0000</pubDate>
		<dc:creator>Jacob Gube</dc:creator>
				<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://sixrevisions.com/?p=175</guid>
		<description><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=175&c=569234792' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=175&c=569234792' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br />Testing for web accessibility (how usable a website is by individuals with disabilities) is an often neglected part of web design and development. Web accessibility is important not only because your content will reach a wider range of audience, but also because correcting web accessibility issues have secondary benefits such as cleaner and more semantic [...]]]></description>
			<content:encoded><![CDATA[<a href='http://rss.buysellads.com/click.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=175&c=1813281569' target='_blank'><img src='http://rss.buysellads.com/img.php?z=1259902&k=6989dd4b5220d0b14530453de7387991&a=175&c=1813281569' border='0' alt='' /></a><p><a href='http://buysellads.com/buy/sitedetails/pubkey/6989dd4b5220d0b14530453de7387991/zone/1259902' target='_blank'>Advertise here with BSA</a></p><br /><p>Testing for web accessibility (how usable a website is by  individuals with disabilities) is an often neglected part of web design and  development. Web accessibility is important not only because your content will  reach a wider range of audience, but also because correcting web accessibility  issues have secondary benefits such as cleaner and more semantic code and  better indexibility on search engines.</p>
<p>In this post, you&#8217;ll find <strong>10 free tools to help you evaluate and correct issues which decrease  your website&#8217;s accessibility</strong>. There was a high emphasis on the ease-of-use  during the selection of these tools.</p>
<h3>1. <a href="http://firefox.cita.uiuc.edu/index.php" title="Illinois Center forInformation Technlogy Accessibility - Firefox Extension">Firefox  Accessibility Extension</a></h3>
<p><a href="http://firefox.cita.uiuc.edu/index.php"><img src="http://images.sixrevisions.com/2008/08/27-01_firefox_accessibility_extension.png" alt="Firefox Accessibility Extension - screen shot." width="550" height="200" /></a></p>
<p><span id="more-175"></span></p>
<p>The <em>Firefox Accessibility Extension</em> is a Firefox toolbar  that allows you to inspect every aspect of a web page to determine its  accessibility. A helpful toolbar feature is the Text Equivalents menu which  allows you to generate lists of elements such as images and links to see  whether each are standards-compliant. You can also launch 3rd party  applications such as the WC3 <a href="http://validator.w3.org/checklink" title="The W3C Markup Validation Service">HTML Validator</a> and <a href="http://validator.w3.org/checklink" title="W3C Link Checker">Link Checker</a> services directly from the toolbar.</p>
<h3>2. <a href="http://www.alphaworks.ibm.com/tech/adesigner" title="aDesigner - Overview on alphaWorks.">aDesigner</a></h3>
<p><a href="http://www.alphaworks.ibm.com/tech/adesigner"><img src="http://images.sixrevisions.com/2008/08/27-02_adesigner.png" alt="aDesigner - screen shot." width="550" height="200" /></a></p>
<p><em>aDesigner</em>, developed by IBM, simulates the experience of visually-impaired  individuals so that designers can better understand how a web page is  interpreted by screen readers. It has a plenty of features including a summary  and detailed report of compliancy to web accessibility guidelines and  simulations for blind or low-vision impairment. </p>
<h3>3. <a href="http://sipt07.si.ehu.es/evalaccess2/servlet/Evaluate">EvalAccess</a></h3>
<p><a href="http://sipt07.si.ehu.es/evalaccess2/servlet/Evaluate"><img src="http://images.sixrevisions.com/2008/08/27-03_evalaccess.png" alt="EvalAccess - screen shot." width="550" height="200" /></a></p>
<p><em>EvalAccess</em> is a web-based service for testing your website&#8217;s  accessibility. You can either point to a web page, an entire website, or  directly enter your HTML source code. It checks your mark-up against the WC3&#8242;s  Web Content Accessibility Guidelines (WCAG 1.0) and provides a summary of the  number of errors and warnings and a breakdown of each error.</p>
<h3>4. <a href="http://webanywhere.cs.washington.edu/wa.php" title="WebAnywhere">WebAnywhere</a></h3>
<p><a href="http://webanywhere.cs.washington.edu/wa.php"><img src="http://images.sixrevisions.com/2008/08/27-04_webanywhere.png" alt="WebAnywhere - screen shot." width="550" height="200" /></a></p>
<p><em>WebAnywhere</em> is a browser-based web application that works similarly  to screen readers such as JAWS. It&#8217;s an excellent way to see how a web page is  read and navigated by assistive technologies.</p>
<h3>5. <a href="http://www.fujitsu.com/global/accessibility/assistance/wi/">Web  Accessibility Inspector</a></h3>
<p><a href="http://www.fujitsu.com/global/accessibility/assistance/wi/"><img src="http://images.sixrevisions.com/2008/08/27-05_web_accessibility_inspector.png" alt="Web Accessibility Inspector - screen shot." width="550" height="200" /></a></p>
<p>The <em>Web Accessibility Inspector</em>, developed by Fujitsu, is a  desktop application that indicates web accessibility issues. You can specify a  file, folder, or URL to run the inspection on. It has the &quot;View on the  screen&quot; option which opens the web page in a browser window with markers  that point out elements that have issues.</p>
<h3>6. <a href="http://www.vischeck.com/vischeck/" title="Vischeck - about page.">Vischeck</a></h3>
<p><a href="http://www.vischeck.com/vischeck/"><img src="http://images.sixrevisions.com/2008/08/27-06_vischeck.png" alt="Vischeck - screen shot." width="550" height="200" /></a></p>
<p><em>Vischeck</em> simulates how a web page or image will look if  viewed by people affected with color-blindness. It simulates three types of  color-blindness. You can conduct the test by <a href="http://www.vischeck.com/vischeck/vischeckURL.php" title="VischeckURL tool.">entering a URL</a> or <a href="http://www.vischeck.com/vischeck/vischeckImage.php" title="VischeckImage tool.">uploading images</a>.</p>
<h3>7. <a href="http://gmazzocato.altervista.org/colorwheel/wheel.php" title="Accessibility Color Wheel - tool.">Accessibility Color Wheel</a></h3>
<p><a href="http://gmazzocato.altervista.org/colorwheel/wheel.php"><img src="http://images.sixrevisions.com/2008/08/27-07_accessibility_color_wheel.png" alt="Accessibility Color Wheel - screen shot." width="550" height="200" /></a></p>
<p>The <em>Accessibility Color Wheel</em> is a web-based tool to help  you select the background color and font color. You can enter the hexadecimal  values of the colors you want to test, or you can hover over the color wheel to  select colors.</p>
<h3>8. <a href="http://juicystudio.com/article/colour-contrast-analyser-firefox-extension.php" title="Juicy Studio - Colour Contrast Analyser - Firefox Extension">Colour  Contrast Analyser</a></h3>
<p><a href="http://juicystudio.com/article/colour-contrast-analyser-firefox-extension.php"><img src="http://images.sixrevisions.com/2008/08/27-08_color_contras_analyzer.png" alt="Colour Contrast Analyser - screen shot." width="550" height="200" /></a></p>
<p>The <em>Colour Contrast Analyser</em>, developed by Juicy Studio, is  a Firefox extension (currently in alpha) that checks all the elements in the  Document Object Model for color contrast to insure that content is accessible  by people who are color-blind or affected by other visual-impairments. It uses  the color and brightness differences algorithm suggested by the WC3 &quot;<a href="http://www.w3.org/TR/2000/WD-AERT-20000426#color-contrast">Techniques For  Accessibility Evaluation And Repair Tools</a>&quot; (AERT).</p>
<p>Juicy Studio also has other web accessibility evaluation  tools such as the <a href="http://juicystudio.com/services/readability.php">Readability  Test</a>, <a href="http://juicystudio.com/services/csstest.php">CSS Analyser</a>,  and <a href="http://juicystudio.com/services/image.php">Image Analyser</a>.</p>
<h3>9. <a href="http://www.tawdis.net/taw3/cms/en" title="TAW. Web Accessibility Test - home.">TAW Web Accessibility Test</a></h3>
<p><a href="http://www.tawdis.net/taw3/cms/en"><img src="http://images.sixrevisions.com/2008/08/27-09_taw.png" alt="TAW Web Accessibility Test - screen shot." width="550" height="200" /></a></p>
<p>The TAW Web Accessibility Test evaluates your website&#8217;s  accessibility based on the WCAG 1.0. It marks trouble spots directly on the web  page, allowing you to quickly see where the errors are. Clicking on the  error/warning indicator will bump you down to a summary of the issue. It&#8217;s a  great way to visualize the areas of a web page that needs work.</p>
<h3>10. <a href="http://www.paciellogroup.com/resources/wat-ie-documentation.html" title="Resource Center - Documentation WAT for IE 2.0">Web Accessibility Toolbar</a></h3>
<p><a href="http://www.paciellogroup.com/resources/wat-ie-documentation.html"><img src="http://images.sixrevisions.com/2008/08/27-10_wat.png" alt="Web Accessibility Toolbar - screen shot." width="550" height="200" /></a></p>
<p>The Web Accessibility Toolbar (WAT) is an extension for  Internet Explorer or Opera that offers designers a ton of useful tools and  features to help in the analysis of a web page&#8217;s accessibility. One helpful  feature is the Greyscale (Colour &gt; Greyscale) feature which renders the web  page in black in white to help you find low-contrast spots in the design.</p>
<h3>What&#8217;s your viewpoint on web accessibility?</h3>
<p>How important is it in your web projects? Do you go out of  your way to make your projects accessible? Share your thoughts in the comments  section below.</p>
]]></content:encoded>
			<wfw:commentRss>http://sixrevisions.com/web-standards/accessibility_testtools/feed/</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
	</channel>
</rss>

