<?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>Advanced CSS Design Resources - last-child.com &#187; Class</title>
	<atom:link href="http://www.last-child.com/category/html-elements/class/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.last-child.com</link>
	<description>CSS Toys for Professional Web Developers</description>
	<lastBuildDate>Thu, 08 Jul 2010 16:59:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Class Equals Screen Reader Info</title>
		<link>http://www.last-child.com/class-equals-screen-reader-info/</link>
		<comments>http://www.last-child.com/class-equals-screen-reader-info/#comments</comments>
		<pubDate>Sat, 21 Jul 2007 13:10:09 +0000</pubDate>
		<dc:creator>Ted</dc:creator>
				<category><![CDATA[:absolute]]></category>
		<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Class]]></category>
		<category><![CDATA[Table Header]]></category>
		<category><![CDATA[Table Header Scope]]></category>
		<category><![CDATA[Table Summary]]></category>
		<category><![CDATA[Yahoo!]]></category>
		<category><![CDATA[position]]></category>

		<guid isPermaLink="false">http://www.last-child.com/class-equals-screen-reader-info/</guid>
		<description><![CDATA[I&#8217;ve been using a little CSS trickery to hide content and data from the average user. I hate to mention it too often as it can open pandora&#8217;s box. There was a recent thread on the Microformat&#8217;s discussion list about this very topic. The gist of many programmers is that data worth sharing is data [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been using a little CSS trickery to hide content and data from the average user. I hate to mention it too often as it can open pandora&#8217;s box. There was a recent thread on the Microformat&#8217;s discussion list about this very topic. The gist of many programmers is that data worth sharing is data worth displaying.</p>
<p>However, there are times when your UED provides a design that lacks visual hooks for your screen reader users. A good example may be the ever-popular search form. Most sites will have an input and a button that says &#8220;search&#8221;. The label for this input is nowhere to be found.</p>
<p>The average sighted user can figure out such a simple form but the screen reader needs a bit more help. Here&#8217;s a sound clip of a screen reader trying to use the <a href="http://last-child.com/tests/YahooKids_SearchBar.mp3">search form on Yahoo! Kids (.mp3)</a>. This was further complicated by the missing alt attribute on the image-based submit button.</p>
<p>I&#8217;ve also had to work with table based forms that need some assistance. The table is marked up with appropriate table headers and scopes, but the individual inputs lack labels due to the UED. </p>
<h3>The simple solution</h3>
<p>There are many ways to hide content via CSS. You want to avoid <em>visibility:hidden</em> and <em>display:none</em>. These will also hide it from the screen reader. You could use <em>text-indent:-1000 em</em>. I prefer using <em>position:absolute; <del title="using top could cause pages to jump. just use left" rel="edited 04-24-2008">top:0;</del> left:-1000em;</em>. This hides the label by pushing it off screen yet the screen reader is still able to use it.</p>
<h4>Updated CSS (updated 4/24/2008)</h4>
<p>Adding a top position to your hidden may cause the page to jump when the item is focused. Only use a negative left position and leave the top position out of the equation.</p>
<h3>Samples</h3>
<p>Let&#8217;s look at the <a href="http://last-child.com/tests/sample-consolidate-form.html">complicated table with hidden inputs</a>.  The table is properly coded with summary and scope. However, the table would still be difficult for a screen reader without form labels.  </p>
<p>Here&#8217;s a sample of the HTML code:<br />
<code lang="HTML"></p>
<td>
<label for="cc3_payment" class="srinfo">Creditcard3 Payment</label></p>
<input id="cc3_payment" name="cc3_payment" size="10" value="0" tabindex="10" maxlength="10" type="text">
</td>
<p></code></p>
<p>Here&#8217;s the CSS for the labels</p>
<p><code lang="CSS"><br />
.srinfo {position:absolute; <del>top:0;</del> left:-1000em;}<br />
</code></p>
<h3>Extending the hidden screen reader concept</h3>
<p>I&#8217;ve written earlier about how Yahoo! Tech used a hidden collection of links to <a href="http://www.last-child.com/make-flash-accessible-to-screen-readers-in-transparent-window-mode/">replicate an inaccessible flash movie</a>. In a nutshell: screen readers cannot see a flash movie that has wmode:transparent. To get around this, we duplicated the flash content and moved it off-screen for screen readers and search engines.  </p>
<p>You could also use this technique for providing information specific to screen reader users, such as:<br />
<code lang="HTML"></p>
<p class="srinfo">Please note, this page uses JavaScript to continually update stock information. Look for the link: "disable stock updates" to turn this feature off</p>
<p></code></p>
<h3>Hold the Presses, this isn&#8217;t perfect!</h3>
<p>You can&#8217;t just throw anything off screen for the screen readers. The earlier Yahoo Tech example took about made 6 links invisible yet they were still accessible to keyboard users. So, remember, when you use the <strong>srinfo</strong> class to hide content for screen readers, keep in mind the impact on keyboard users. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.last-child.com/class-equals-screen-reader-info/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
<enclosure url="http://last-child.com/tests/YahooKids_SearchBar.mp3" length="3399296" type="audio/mpeg" />
		</item>
		<item>
		<title>Image sprites &#8211; flexible and accessible packages</title>
		<link>http://www.last-child.com/image-sprites-flexible-and-accessible-packages/</link>
		<comments>http://www.last-child.com/image-sprites-flexible-and-accessible-packages/#comments</comments>
		<pubDate>Tue, 17 Oct 2006 20:11:11 +0000</pubDate>
		<dc:creator>Ted</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Class]]></category>
		<category><![CDATA[Definition List]]></category>
		<category><![CDATA[HTML Elements]]></category>
		<category><![CDATA[Image Replacement]]></category>
		<category><![CDATA[Image Sprites]]></category>
		<category><![CDATA[Span]]></category>
		<category><![CDATA[Yahoo!]]></category>
		<category><![CDATA[background]]></category>
		<category><![CDATA[position]]></category>

		<guid isPermaLink="false">http://www.last-child.com/image-sprites-flexible-and-accessible-packages/</guid>
		<description><![CDATA[User generated ratings and reviews are an important part of all Yahoo! sites. You can find them on just about every page of Yahoo! Tech.&#160; It was important for us to develop a ratings presentation device that was easy to code, accessible, flexible, and as light-weight as possible. Our final design uses a combination of [...]]]></description>
			<content:encoded><![CDATA[<p> User  generated ratings and reviews are an important part of all Yahoo! sites. You can find them on  just about every page of <a href="http://tech.yahoo.com">Yahoo! Tech</a>.&nbsp; It  was important for us to develop a ratings presentation device that was easy to code,  accessible, flexible, and as light-weight as possible. Our final design  uses a combination of image sprites and negative text-indent to satisfy these requirements.</p>
<p>
Product ratings are represented with 1 to 5 stars. Other sites  have used inline images; repeating a solid or empty version for each of the  five stars. <img src="http://us.i1.yimg.com/us.yimg.com/i/us/sh/karma/ar_star_4half.gif" alt="stars image from Yahoo! Shopping" width="93" height="16" />Other sites, such as Yahoo! Shopping, have used a single inline image representing the number of  stars.&nbsp;  At best, the image will have an alt attribute that descibes the number of stars. However, the content is locked inside the image. This is an easy approach for  coding but isn&rsquo;t the most accessible approach. </p>
<h3>Yahoo! Tech uses the <strong>content first</strong> approach to design</h3>
<p>
Content-first design improves accessibility. This approach places the relevant content in semantic markup. It then uses CSS to transform that content into the visual design. Here is a sample rating from Yahoo! Tech: <strong>Overall:4/5, Quality:5/5, Support: 3/5</strong>. Our CSS transform that simple text into a series of stars and accompanying text. User testing with a screen-reader user led us to remove visual descriptions from the content, i.e.&quot;stars&quot; or &quot;bars&quot;. </p>
<h3>With the content in the page, it was time to look at the visual design. </h3>
<p>Ratings are presented in either an unordered list or definition list. We need to place descriptive text in front of the stars and want the stars to be aligned with each other. These considerations lead to using spans with a combination of CSS rules to hide the text, insert a background image, and absolutely position the ratings to the right side of the list item.  <strong>Let&rsquo;s look at the code.</strong></p>
<h4>The HTML &#8211; span </h4>
<p>
To use  a background image for the stars, we  need a container that can be manipulated with CSS and not include presentational behaviors  of its own. This is why we  use the span, a generic inline container.  We could  use a strong or em, but feel the span offers the best  versatility. You never know when the graphic designer will ask for some text to be bolded or emphasized in the same list item. </p>
<h4>Sample code for a rating</h4>
<p><code lang="HTML"></p>
<ul class="ratingslist">
<li class="stars4">Overall: <span title="Yahoo! users gave the Apple iPod 4 out of 5 stars for Overall Quality">4/5</span></li>
</ul>
<p></code></p>
<p>
The span&rsquo;s title will generate a tooltip when the user places their mouse over the rating (not Internet Explorer). Screen readers&#8217; default settings ignore title attributes on non-form items.</p>
<h4>The CSS</h4>
<p>
Spans are inline elements.&nbsp;  To display background images, we need to make them display block, define  a height, width, and move the text off the screen. To keep them inline with the  text, we are also positioning them absolutely. We could  position them relatively or floated the spans. Position absolute works the best for our pages.The parent list item is positioned  relatively to give the span a contextual anchor. Negative text-indent will hide the rating text.</p>
<p><code lang="CSS"><br />
.ratingslist {list-style-type:none;}<br />
.ratingslist li {position:relative;  padding:3px 5px; }<br />
.ratingslist li span {text-indent:-1000em; width:66px;  display:block; position:absolute;  top:5px; right:20px;}<br />
</code></p>
<h4>Image sprites display the desired number of stars</h4>
<p>
The list item is given a class with a number at the end  (stars8). This will display an image with four out of five red stars. We are using a scale of 0 to 10 to accomodate half stars. To  display other rating variations, we change the modifier, i.e. prostars4,  retstars4, bars4, bigstars4, etc&hellip;</p>
<p>
To simplify the maintenance of the site and  reduce server  requests; Yahoo! Tech also uses image sprites. Sprites are <a href="http://l.yimg.com/tech.yahoo.com/images/20061004202215/bg-ratings.png">single images that include multiple icons</a> with a consistent spacing between them. Use background positioning to display the desired chunk of the image. Each sprite represents the  possible color variations used on the site: red, blue, and green. Minimizing the  color palettes reduces the final image size.  For more  information on sprites, read <a href="http://www.alistapart.com/articles/sprites/">CSS Sprites: Image Slicing&rsquo;s Kiss of Death</a> by Dave Shea. As a further enhancement, alpha transparent png images are  used for most browsers and index-transparent gifs are presented in the Internet  Explorer 6  style sheets.&nbsp;</p>
<p>
Background images are positioned with the set of numbers after &quot;no repeat.&quot; The horizontal positioning is first. Our sprite is vertical, so we are leaving it alone, hence the 0 value. The vertical positiong comes next. If we want to display 2 out of 5 stars, we need to shift the background down to that part of the image (-530px). Here is the CSS for presenting the specific star variant.</p>
<p><code lang="CSS"><br />
/* Ratings images<br />
  ======================================= */<br />
  .stars0 span {background:url(/images/bg-ratings.png)  no-repeat 0 -650px;}<br />
  .stars1 span {background:url(/images/bg-ratings.png)  no-repeat 0 -620px;}<br />
  .stars2 span {background:url(/images/bg-ratings.png)  no-repeat 0 -590px;}<br />
  .stars3 span {background:url(/images/bg-ratings.png)  no-repeat 0 -560px;}<br />
  .stars4 span {background:url(/images/bg-ratings.png)  no-repeat 0 -530px;}<br />
  .stars5 span {background:url(/images/bg-ratings.png)  no-repeat 0 -500px;}<br />
  &hellip; (repeated for each variation of the stars and bars)<br />
</code></p>
<p>
This approach has allowed the Yahoo! Tech engineers  to maintain a consistent presentation  with minimal  markup. For pages that need special tweaks we can easily adjust the positioning  by using descending selectors: </p>
<p><code lang="CSS"><br />
#mytech .ratingslist li span { right:5px;}<br />
</code></p>
<h4>Caveats</h4>
<p>
We&rsquo;ve only found a few small issues with this approach. </p>
<ul >
<li>You cannot count on background images being displayed on the printed page. Our print style sheet removes the text-indent and background images to display &ldquo;Overall: 4/5&rdquo;. </li>
<li>When       someone includes more than 4 products in the comparison table, the text of some rating parameters will begin to overlap the stars. If they were inline images or if we floated the spans, they may drop to the next line. </li>
</ul>
<p>
Yahoo Tech! ratings are another example of creating  accessible and visually dynamic pages by considering the underlying content  structure before attacking the styles. Users of all abilities are presented  with solid information. That&rsquo;s how you can deliver a 5 star page every time.</p>
<p>Related Information</p>
<ul>
<li> <a href="http://www.alistapart.com/articles/sprites/">CSS Sprites: Image Slicing&rsquo;s Kiss of Death</a> by Dave Shea.</li>
<li><a href="/make-flash-accessible-to-screen-readers-in-transparent-window-mode/">Making Flash Accessible to Screen Readers</a></li>
<li><a href="http://rollyo.com/search.html?q=sprites&#038;uid=0&#038;sid=4886">Standardista Search: Sprites</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.last-child.com/image-sprites-flexible-and-accessible-packages/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Microformats and Yahoo! Tech</title>
		<link>http://www.last-child.com/microformats-and-yahoo-tech/</link>
		<comments>http://www.last-child.com/microformats-and-yahoo-tech/#comments</comments>
		<pubDate>Thu, 27 Jul 2006 07:10:06 +0000</pubDate>
		<dc:creator>Ted</dc:creator>
				<category><![CDATA[Class]]></category>
		<category><![CDATA[Online Resource]]></category>
		<category><![CDATA[Yahoo!]]></category>
		<category><![CDATA[microformats]]></category>

		<guid isPermaLink="false">http://www.last-child.com/microformats-and-yahoo-tech/</guid>
		<description><![CDATA[You&#8217;ve probably heard of Microformats by now. It&#8217;s that vague concept floated amongst the standardistas which promises to solve world hunger and bring peace to the Middle East. You&#8217;ve always got something more immediate to do and hope to read about it soon. Heck, you don&#8217;t even know how it is actually used as an [...]]]></description>
			<content:encoded><![CDATA[<p>
You&rsquo;ve probably heard of <a href="http://microformats.org/wiki/rel-directory">Microformats</a> by now. It&rsquo;s  that vague concept floated amongst the standardistas which promises to solve  world hunger and bring peace to the Middle East.  You&rsquo;ve always got something more immediate to do and hope to read about it  soon. Heck, you don&rsquo;t even know how it is actually used as an end product.  Isn&rsquo;t it just more code in the page? </p>
<p>
All of these questions and issues kept me from trying out  microformats until <a href="http://tantek.com/" title="http://tantek.com/">Tantek &Ccedil;elik</a>&nbsp;  gave a lecture at Yahoo! this year.&nbsp; While  the usefulness of the concept was still vague, the ease of implementation  inspired us to give it a try.</p>
<p>
Microformats let you define information in your page with a  set of recognized classes. A parser (program or web site that transforms your  information into useful tools) looks for containers with those classes and  collects the information within them.&nbsp; The  user is then able to add people, events, recipes, web sites, etc to their  organizers, databases, etc. Think of it as a way to multi-task your web pages. </p>
<p>
Yahoo! Tech launched with basic support of the <a href="http://microformats.org/wiki/hreview">hReview</a> microformat. We&rsquo;ve  continued to investigate how we can further support microformats and similar  technology. </p>
<h3>Introducing the Yahoo! Tech Bloggers with hCard microformat</h3>
<p>
The <a href="http://microformats.org/wiki/hcard">hCard</a> microformat is based on a pre-existing standard (vCard).&nbsp; There are many programs, web sites, and  aggregators that are already prepared to use your information. You can add this to your site quite easily. </p>
<p><img id="image84" src="http://www.last-child.com/wp-content/uploads/2006/07/yahoo-hcard.jpg" alt="hcard microformat details on Yahoo! Tech" /></p>
<p>Let&rsquo;s look at  some code on a blog post by Robin Raskin (<a href="http://tech.yahoo.com/blogs/raskin/621">http://tech.yahoo.com/blogs/raskin/621</a>)<!-- thanks go to Shlomi A, http://www.webcssdesign.34sp.com/,  for noticing this was a broken link--> This block begins with a list of content for the microformat parser, since it  is not a part of the visual design, we are hiding it with CSS. The next section  includes a set of links, her bio link has class=&rdquo;url&rdquo;.</p>
<p><code lang="HTML"><br />
<!--The following classes are part of the hcard microformat: vcard, url, email, fn, org, title --></p>
<div id="eptAbout" class="navmod vcard">
<ul class=" microformatdetail"><!--hcard values--></p>
<li class="fn">Robin Raskin</li>
<li class="org">Yahoo! Tech</li>
<li class="title">Yahoo! Tech Advisor</li>
<li><img src="/images/raskin.gif" alt="Robin Raskin" class="photo"/></li>
</ul>
<h4>About Robin Raskin</h4>
<ul>
<li><a href="foo.html" >Robin's Blog</a></li>
<li><a href="foo.html" class="url">Robin's Bio</a></li>
<li><a href="foo.html">Email Robin</a></li>
</ul>
</div>
<p></code></p>
<p>&nbsp;</p>
<h3>Microformat classes and their functions</h3>
<ul>
<li><strong>div.vcard</strong>:       This triggers the parser, letting it know  the following information       conforms to the hCard microformat</li>
<li><strong>li.fn</strong>:       This is the formatted name of the person: Robin Raskin. </li>
<li><strong>li.title</strong>:       Robin Raskin&rsquo;s title &ndash; Yahoo! Tech Advisor</li>
<li><strong>li.org</strong>:       The company Robin works for &ndash; Yahoo! Tech</li>
<li><strong>img</strong><strong>.photo</strong>: This is a photograph of       Robin</li>
<li><strong>a.url</strong>:       This is a web site for Robin. </li>
<li><strong>a.url.email</strong>:       If the Email Robin link were in the classic <a href="mailto:foo@foo.com">mailto:foo@foo.com</a> format, we&rsquo;d use these classes. Instead, the target is a contact form. To       avoid confusion, we&rsquo;ve left this link alone.</li>
</ul>
<h3>Testing your microformatting</h3>
<p>
<a href="http://blog.codeeg.com/tails-firefox-extension-03/">Tails</a> is a great <a href="http://www.mozilla.com/firefox/central/">Firefox</a> extension for testing your code. It will display  an icon in the browser if a page has microformatting. You can then click on it to open a window with all of  the available information. This is a great debugging tool. Be sure to get the  latest version for the best microformats support and extensibility. </p>
<h3>An intertwining pattern library</h3>
<p>
Microformats are a rapidly growing technology. As patterns  develop, they can be integrated into various other microformats and patterns.  This requires going beneath the surface of the <a href="http://microformats.org/wiki/Main_Page">microformat twiki</a> to harness  its power.&nbsp; While your results may not  bring immediate benefits, the level of work can be minimal. This also requires having some faith in your code, as you may not be able to test the results. </p>
<h3>The rel-tag microformat </h3>
<p>
<a href="http://technorati.com/">Technorati</a> has made the <a href="http://microformats.org/wiki/rel-tag">rel-tag</a> an important  addition to web sites. Simply add rel=&rdquo;tag&rdquo; to a link that refers to a page  that is an index for information about the link text.&nbsp; For instance, Robin Raskin&rsquo;s page   features a set of category related links. The rel-tag microformat lets  Technorati and other parsers know where to will find the category index pages.&nbsp; </p>
<p>
The rel-directory pattern extends this concept. If Robin&rsquo;s  post was about digital cameras and she included a link to the digital camera  index, we could add &ldquo;directory&rdquo; to the rel tag.&nbsp;  The final code would be:</p>
<p><code lang="HTML"><br />
<a href="foo.html" rel="tag directory">Digital Cameras</a></code></p>
<h3>The rel-home draft</h3>
<p>
Ther rel-home draft allows web developers to specifically  define the link that takes the user to the home page of the site. Currently  this can be done without microformatting; but lacks significant browser  support. To use straight HTML, place this in the head of your page: &lt;link  rel=&rdquo;home&rdquo; href=&rdquo;/index.html&rdquo; /&gt;. Theoretically, the browser would detect  this and give the user a hotkey to go back to the home page.</p>
<p>
The rel-home microformat draft allows the developer to  easily label the home page link. For instance, on Yahoo! Tech, the user can  either click the large Tech logo or the products tab. Neither of these are the  most intuitive, the rel-home could provide further assistance. Browsers don&rsquo;t support this yet, but its simplicity makes it a natural to begin  now. <br />
  The code is quite simple, add rel=&rdquo;home&rdquo; to your link: </p>
<p><code lang="HTML"><br />
  <a href="/ " rel="home" title="Go back to the Yahoo! Tech home page">Products</a></code></p>
<h3>Should you begin using Microformats?</h3>
<p>As you can see, the code is fairly simple. If your site is already presenting contact information, reviews, calendar events, or category indices, it&#8217;s time to look at adding a few Microformat details. The rel-tag, rel-home patterns are the easiest to apply. The hCard and <a href="http://microformats.org/wiki/hcalendar">hCalendar</a> formats will give you the most usable information. Keep an eye on microformats.org for the latest developments and join their discussion list to play an active part in the evolution of patterns. Microformats may not bring peace to the Middle East, but they will give your web site&#8217;s content more power and functionality.  </p>
<h3>Resources</h3>
<ul type="disc">
<li><a href="http://microformats.org/code/hcard/creator">hCard creator</a> &ndash; This       tool creates hCard code for you.</li>
<li><a href="http://microformats.org/wiki/hcard">hCard specification </a>&nbsp;- Microformat Twiki</li>
<li>The <a href="http://microformats.org/wiki/rel-tag">rel-tag specification</a> &#8211;       Microformat Twiki</li>
<li>The <a href="http://microformats.org/wiki/rel-directory">rel-directory</a> draft       &#8211; Microformat Twiki</li>
<li>The <a href="http://microformats.org/wiki/rel-home">rel-home</a> draft &#8211;       Microformat Twiki</li>
<li><a href="http://blog.codeeg.com/tails-firefox-extension-03/">Tails Firefox       extension</a> &ndash; Instant access to microformat details</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.last-child.com/microformats-and-yahoo-tech/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>The hReview format on Yahoo! Tech</title>
		<link>http://www.last-child.com/the-hreview-format-on-yahoo-tech/</link>
		<comments>http://www.last-child.com/the-hreview-format-on-yahoo-tech/#comments</comments>
		<pubDate>Tue, 25 Jul 2006 23:58:42 +0000</pubDate>
		<dc:creator>Ted</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Class]]></category>
		<category><![CDATA[Id]]></category>
		<category><![CDATA[Yahoo!]]></category>
		<category><![CDATA[microformats]]></category>

		<guid isPermaLink="false">http://www.last-child.com/the-hreview-format-on-yahoo-tech/</guid>
		<description><![CDATA[Yahoo! Tech launched with basic support for the hReview microformat. Initially, I had no way of testing the output and didn&#8217;t realize our limited output. Tails, a Firefox extension, has helped me fine-tune the hReviews. However, Yahoo! Tech still has an outstanding bug with these reviews. Due to the modular construction of this page,&#160; I [...]]]></description>
			<content:encoded><![CDATA[<p>
<a href="http://tech.yahoo.com">Yahoo! Tech</a> launched with basic support for the <a href="http://microformats.org/wiki/hreview">hReview</a>  microformat.  Initially, I had no way of testing the output and didn&rsquo;t realize our limited output.  <a href="http://blog.codeeg.com/tails-firefox-extension-03/">Tails</a>, a Firefox extension, has helped me fine-tune the hReviews. However, Yahoo! Tech still has an outstanding bug with these reviews.</p>
<p>
<a href="http://www.microformats.org"><img id="image86" src="http://www.last-child.com/wp-content/uploads/2006/07/logo.gif" alt="microformats logo" /></a><br />
Due to  the modular construction of this page,&nbsp; I  am not able to get the product name into the hReview.  <a href="http://www.simplebits.com/">Dan Cederholm&rsquo;s</a> post about using the <a href="http://www.simplebits.com/notebook/2006/06/10/wineformats.html">object  include microformat pattern</a> may actually solve this issue.  </p>
<p>
The include pattern lets you define the product or  person&rsquo;s identity earlier in the page and then reference it in individual  reviews or blog posts with an object tag. Unfortunately,  Safari and Internet Explorer do not behave properly when the object element  appears multiple times. An updated  version of the pattern uses the link tag instead. </p>
<h3>Link-based Object Pattern</h3>
<p>
Before you get to your reviews,  define the product or person with  the microformat classes <em>item</em> and <em>fn</em>. Item defines the nature of the content and  fn tells us the content is the formatted name of the item. You&rsquo;ll also need to  add a unique id.</p>
<p><code lang="HTML"><br />
<h3 class="item fn" id="prodname">Product  Name</h3>
<p></code></p>
<p>
In your hReview, you need to reference this product by its  id.</p>
<p><code lang="HTML"><a href="#prodname" class="include microformatdetail"></a></code></p>
<p>
Unfortunately, a screen reader will announce this as a link.  We have a special class, <strong>microformatdetail</strong>, to hide microformat details that are not part of the visual design. This is a convenient way to add some background information to your hReview, hCard, and hCalendar elements.</p>
<p><code lang="CSS">.microformatdetail {display:none; /*content for microformat  parsing only */}</code></p>
<h3>The final Yahoo! Tech hReview microformat</h3>
<p>
Let&#8217;s look at the code for a <a href="http://tech.yahoo.com/pr/olympus-camedia-c-5500-sport-zoom-digital-camera/1991688178">digital camera</a> product page. We&#8217;ll first define the product name in the top module and then present the reviews later on the page. </p>
<h4>Add the product name at the top of the page</h4>
<p><code lang="HTML"><br />
<h2 id="prodname" class="item fn">Olympus  CAMEDIA C-5500 Sport Zoom Digital Camera</h2>
<p></code></p>
<h4>Create an individual review</h4>
<p><strong>Note: </strong>the new link is at the end of the metadetails paragraph</p>
<p><code lang="HTML"></p>
<div class="arating hreview">
<div class="hd">
<h3 class="summary">good camera</h3>
<p class="metadetails">By <a href="foo.html" title="visit John Doe's profile page" class="reviewer fn">John Doe</a> - <a href="foo.html ">See all John Doe's reviews</a> - <span class="dtreviewed">02/09/06</span> <a href=”#prodname” class=”include microformatdetail”></a></p>
</div>
<div class="bd">
<div class="ratreviewsummary">
<ul class="ratingslist">
<li class="overall stars10">Overall: <span title="John Doe gave this product 5 out of 5 stars for Overall quality"><em class="rating">5</em>/5 </span></li>
<li class="bars10">Features: <span title="John Doe gave this product 5 out of 5 stars for Features" class="rating">5/5 </span></li>
<li class="bars10">Quality: <span title="John Doe gave this product 5 out of 5 stars for Quality" class="rating">5/5 </span></li>
<li class="bars10">Support: <span title="John Doe gave this product 5 out of 5 stars for Support" class="rating">5/5 </span></li>
<li class="bars10">Value: <span title="John Doe gave this product 5 out of 5 stars for Value" class="rating">5/5 </span></li>
</ul>
<dl class="procons description ">
<dt>Pros:</dt>
<dd>great camera</dd>
</dl>
<dl class="procons ">
<dt>Cons:</dt>
<dd>blurry when flash is off</dd>
</dl>
</div>
<div class="ytuserreviewtext">
<p class="description">I got it for 170 $ it us a great camera, I have loved it great pictures great features and a great value i would recomend it to any one</p>
</div>
</div>
</div>
<p></code>  </p>
<h3>How is the hReview actually used?</h3>
<p>
We are still working on this final element of hReviews on our <a href="http://tech.yahoo.com/pr/epson-stylus-photo-r2400/1991834114">product pages</a>.  Once it is live, we should begin seeing the benefits. Technorati is the first search  engine to begin scraping microformatted information. When hReviews become more  prevalent, more search engines and sites will consolidate products with their  reviews from around the web. This will give users much more flexibility with  shopping decisions.</p>
<h3>Resources</h3>
<ul>
<li><a href="http://kitchen.technorati.com/search?s=LCD+HDTV">Microformat search for LCD HDTV products and reviews</a></li>
<li><a href="http://microformats.org/code/hcard/creator">hCard creator</a> &ndash; This tool creates hCard code for you.</li>
<li><a href="http://microformats.org/wiki/hcard">hCard specification </a>&nbsp;- Microformat Twiki</li>
<li>The <a href="http://microformats.org/wiki/rel-tag">rel-tag specification</a> &#8211; Microformat Twiki</li>
<li>The <a href="http://microformats.org/wiki/rel-directory">rel-directory</a> draft  &#8211; Microformat Twiki</li>
<li>The <a href="http://microformats.org/wiki/rel-home">rel-home</a> draft &#8211; Microformat Twiki</li>
<li><a href="http://blog.codeeg.com/tails-firefox-extension-03/">Tails Firefox extension</a> &ndash; Instant access to microformat details</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.last-child.com/the-hreview-format-on-yahoo-tech/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
