What is the best way to markup a testimonial in XHTML? - xhtml

I used to just use p and span elements for this... but I'm always pushing to use the right elements, and this is something I haven't really thought about before with regard to testimonials.
This is what I had in mind...
<div class="testimonial">
<blockquote>I love your products!</blockquote>
<span>Jim Testimonial-giver</span>
</div>
Does that look like the best way to do this? Is there a best practice?
I looked at how the W3C markup testimonials on their site, and they have used...
<blockquote>
<p>
<a id="aptest" name="aptest">Applied Testin.....</a>
<br />
<span class="QuoteAttr">-- Shane P. M...</span>
</p>
</blockquote>
Should I just copy how the W3C did it, after all shouldn't they be correct?

Use the cite tag:
<div class="testimonial">
<blockquote>i love your products</blockquote>
<cite>Jim Testimonial-giver</cite>
</div>
Also I would probably do it like this:
<blockquote class="testimonial">
i love your products
<cite>Jim Testimonial-giver</cite>
</blockquote>
Just to make it slightly more semantic and clearly tie the citation with the quote. Divs should only be necessary for structural things.

The Mozilla.org style guide seems to prefer using q for the quotation and <cite> for the author, wrapped in a <blockquote> or a <div> with an appropriate class. HTML 5 seems to strongly frown on using <cite> for people's names; it says that it should only be used for the titles of works.
Following that model, perhaps something like this:
<blockquote class="testimonial">
<q>I love your products!</q>
<cite>Jim Testimonial-giver</cite>
</blockquote>
Or if you don't want to use <cite>, then:
<blockquote class="testimonial">
<q>I love your products!</q>
<span class="quote-attribution">Jim Testimonial-giver</span>
</blockquote>

For a long time I used Tantek Çelik's slide as a reference when it came to quotations.
But seeing the comments by alex and Rex M, I'm thinking about this implementation for testimonials:
<ul id="testimonials">
<li>
<blockquote>
i love your products
</blockquote>
<cite>—Jim Testimonial-giver</cite>
</li>
<li>
<blockquote>
i love your products even more
</blockquote>
<cite>—Joe Testimonial-giver</cite>
</li>
[...]
</ul>

Related

Paragraph Tags are not Functioning As Expected

Thanks in advance for any help here.
I have a sandbox and a live site that I'm making some minor tweaks to. There's one section that I just can't figure out what's causing the issue. Photos below.
Inside a li there's menu items that have a title, description and price. In some instances there's no price for the item and when that field is empty in the CMS the lines style themselves differently.
Here is the way I want it to appear: Live Site: https://www.crownshy.nyc/menus/#cocktails
cocktails page non-alc with no prices
The following is the way it's populating on the sandbox: https://crownshy-sandbox.getbento.com/menus/#cocktails
Sandbox cocktails page non-alc no prices
There's really nothing special about the code here, which is why I'm a bit confused. I just need to take a break and come back with a fresh eye but hoping you all can speed this along. I'm happy to post the CSS but figure because it's several classes that it would be easier to look at it on the developer console
<section class="menu-section">
<div class="menu-section__header">
<h2>Non-Alcoholic</h2>
</div>
<ul>
<li class="menu-item">
<p class="menu-item__heading">No Mas</p>
<p>Pear, Citrus, Rose, Lemon, Yogurt</p>
<p class="menu-item__details menu-item__details--price">
</p>
</li>
<li class="menu-item">
<p class="menu-item__heading">Ginger Jammer</p>
<p>Ginger, Mango, Togarashi, Lime, Soda</p>
<p class="menu-item__details menu-item__details--price">
</p>
</li>
<li class="menu-item">
<p class="menu-item__heading">Hojito</p>
<p>Hoja Santa, Lime, Tonic, Seasonal Herbs</p>
<p class="menu-item__details menu-item__details--price">
</p>
</li>
</ul>
</section>
On Sandbox the heading appears to be missing a width.
p.menu-item__heading {
width: 100%;
}
You put the style on span tag of on live site with this class name .menu-item__currency
You can use that class name or you can put a new tag and add float:left property with that class, I think then the issue will resolve.

Semantic mark for testimonial details

I jus got the following PSD design:
(sorry about the grid line in between , that blue line really is not needed.).
Now i was wondering with all there html5 tags , what would be a great and semantic markup to code the above design , iám usually a guy who goes old school and uses div and spans , but this time i used cite , when i read the MDN doc's there seems to still be no clarity weather a name/designation can be used in cite , basically the way look at cite is , it a tag to be used only when you have a definitive resource to be added to you markup. Even though neither name nor designation is a definitive resource, i came up with the following markup.
<div class="testimonia-details">
<img src="img/res/p1.png" alt="testimonial giver">
<p>
<span>Brian</span>-May 2015
<span>Managing Partner.<cite>Tammy Lenski LLC</cite></span>
</p>
</div>
can anybody tell me what would be a more semantic way to code the testimonial details ? Thank you , i would greatly appreciate any help or guidance, i have always wonder what would be a semantic markup especially for a scenario like above.
Using schema.org metadata
<div class="testimonia-details" itemscope itemtype="http://schema.org/Person">
<img src="img/res/p1.png" alt="testimonial giver" itemprop="image">
<p>
<span itemprop="name">Brian</span>-May 2015
<span itemprop="jobTitle">Managing Partner.<span itemprop="worksFor">Tammy Lenski LLC</span></span>
</p>
</div>

best practice for show News list in html5

In my page i need to list last news with title only. I have two methods:
One:
<div>
<p>Title One</p>
<p>Title Two</p>
<p>Title Three</p>
<p>Title .....</p>
<p>Title .....</p>
<p>Title .....</p>
</div>
Two:
<div>
<ul>
<li>TTILE ONE </li>
<li>TTILE Two </li>
<li>TTILE THree</li>
<li>TTILE .....</li>
</ul>
</div>
In HTML5 which way is better and readable?! with <p></p> Or <ul><li>?!
Neither is better in terms of how html can be read. However it is considered a list, and so your question can be answered by means of using <li>
You have there a list of news, so the correct one is UL.
The first option, using paragraphs is bad, because... Do you thing titles are paragraphs? I think title != paragraph, so uou can't use <p> tag.
Using an unordered list, <ul>, would be more semantically correct than using a paragraph, <p>.
Obviously either one could be used, so semantics may feel like a 6 vs half dozen sort of thing, but in the long run using the correct tags will make your job easier.
The <p> will come with native styles, i.e. margins and so on, that will need to be removed in your css if you intend you use them this way. While <ul> and <li> will probably only need to have bullet points accounted for.
Also not everyone experiences the web in the same way, try to keep in mind that screen readers will take markup into account when reading pages to the visually impaired.
In more extreme cases semantics can even effect your search engine optimization (SEO). Google, for instance, may grab your first paragraph and use it as a part of your site description.

naming conventions for html elements

I have a general query regarding name of html elements.
I have seen in the past developers placing an prefixes before the id of their html elements eg for a div element -> dvMyDiv
I have seen a mix of casing when naming elements. Similar to that of assigning name to element classes.
So I am wondering is there any standard or convention to what html elements should be named? What casing? Should they have prefixes etc?
I am working with asp.net web forms, html5, css3 and jquery so would like some form of standard for naming conventions that I can share with other developers.
I agree with consistency - if you already have a convention, then stick to it.
However, if your making a new convention, this kind of Hungarian notation can be a really bad idea because it's not at all DRY. For example, the name of the tag is <div> and then the name of your class again says that it's a div. If you change from using <div>s to <section>s, either your code will be out of date or you'll have to change all the class names as well (possibly in HTML, CSS and JavaScript). Since you can target classes using code like div.classname, it adds absolutely no value.
A better idea is to name things after the type of content they include. For example, in a blog, you might use HTML like this:
<section class="posts">
<article id="post-1" class="post">
<h1>Post Title</h1>
<div class="post-content">
<p>Blah blah blah</p>
<p>Blah blah blah</p>
</div>
<time class="timestamp">17th January 2012</time>
</article>
<article id="post-2" class="post">
<h1>Post Title</h1>
<div class="post-content">
<p>Blah blah blah</p>
<p>Blah blah blah</p>
</div>
<time class="timestamp">18th January 2012</time>
</article>
</section>
<aside class="top-posts block"></aside>
<aside class="contact-form block"></aside>
There is no standard you and your colleagues should decide what format you want to use and stick with it. The prefixes thing is kind of Hungarian notation. But I don't really like it. Just make sure the names are clear and descriptive.
REVISED:
After reading the Wiki article it appears a lot of very well-known developers and Microsoft no longer recommend Hungarian Notation.
I am led to believe that Hungarian notation is a very popular naming convention. Also, I believe that it is the recommended and used convention from Microsoft.
I suppose the most important thing is consistency. You should choose a convention and stick with it.
Definitely not Hungarian notation.
I would recommend using semantic HTML http://en.wikipedia.org/wiki/Semantic_HTML as it makes your HTML code easier to read.

Do you think use of XHTML, and classes name is semantically correct in zengarden?

Lots of div and classes name are being used in the code.
http://www.csszengarden.com/
Is there any scope of improvement in semantic?
http://cssglobe.com/post/6957/class-names-revisited
this is mentioned in source code as a comment
This XHTML document is marked up to
provide the designer with the maximum
possible flexibility. There are more
classes and extraneous tags than
needed, and in a real world situation,
it's more likely that it would be
much leaner. However, I think we
can all agree that even given that,
we're still better off than if this
had been built with tables.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<meta name="author" content="Dave Shea" />
<meta name="keywords" content="design, css, cascading, style, sheets, xhtml, graphic design, w3c, web standards, visual, display" />
<meta name="description" content="A demonstration of what can be accomplished visually through CSS-based design." />
<meta name="robots" content="all" />
<title>css Zen Garden: The Beauty in CSS Design</title>
<!-- to correct the unsightly Flash of Unstyled Content. http://www.bluerobot.com/web/css/fouc.asp -->
<script type="text/javascript"></script>
<style type="text/css" title="currentStyle" media="screen">
#import "/001/001.css";
</style>
<link rel="Shortcut Icon" type="image/x-icon" href="http://www.csszengarden.com/favicon.ico" />
<link rel="alternate" type="application/rss+xml" title="RSS" href="http://www.csszengarden.com/zengarden.xml" />
</head>
<body id="css-zen-garden">
<div id="container">
<div id="intro">
<div id="pageHeader">
<h1>
<span>css Zen Garden</span></h1>
<h2>
<span>The Beauty of <acronym title="Cascading Style Sheets">CSS</acronym> Design</span></h2>
</div>
<div id="quickSummary">
<p class="p1">
<span>A demonstration of what can be accomplished visually through <acronym title="Cascading Style Sheets">
CSS</acronym>-based design. Select any style sheet from the list to load it into
this page.</span></p>
<p class="p2">
<span>Download the sample <a href="/zengarden-sample.html" title="This page's source HTML code, not to be modified.">
html file</a> and <a href="/zengarden-sample.css" title="This page's sample CSS, the file you may modify.">
css file</a></span></p>
</div>
<div id="preamble">
<h3>
<span>The Road to Enlightenment</span></h3>
<p class="p1">
<span>Littering a dark and dreary road lay the past relics of browser-specific tags,
incompatible <acronym title="Document Object Model">DOM</acronym>s, and broken <acronym
title="Cascading Style Sheets">CSS</acronym> support.</span></p>
<p class="p2">
<span>Today, we must clear the mind of past practices. Web enlightenment has been achieved
thanks to the tireless efforts of folk like the <acronym title="World Wide Web Consortium">
W3C</acronym>, <acronym title="Web Standards Project">WaSP</acronym> and the
major browser creators.</span></p>
<p class="p3">
<span>The css Zen Garden invites you to relax and meditate on the important lessons
of the masters. Begin to see with clarity. Learn to use the (yet to be) time-honored
techniques in new and invigorating fashion. Become one with the web.</span></p>
</div>
</div>
<div id="supportingText">
<div id="explanation">
<h3>
<span>So What is This About?</span></h3>
<p class="p1">
<span>There is clearly a need for <acronym title="Cascading Style Sheets">CSS</acronym>
to be taken seriously by graphic artists. The Zen Garden aims to excite, inspire,
and encourage participation. To begin, view some of the existing designs in the
list. Clicking on any one will load the style sheet into this very page. The code
remains the same, the only thing that has changed is the external .css file. Yes,
really.</span></p>
<p class="p2">
<span><acronym title="Cascading Style Sheets">CSS</acronym> allows complete and total
control over the style of a hypertext document. The only way this can be illustrated
in a way that gets people excited is by demonstrating what it can truly be, once
the reins are placed in the hands of those able to create beauty from structure.
To date, most examples of neat tricks and hacks have been demonstrated by structurists
and coders. Designers have yet to make their mark. This needs to change.</span></p>
</div>
<div id="participation">
<h3>
<span>Participation</span></h3>
<p class="p1">
<span>Graphic artists only please. You are modifying this page, so strong <acronym
title="Cascading Style Sheets">CSS</acronym> skills are necessary, but the example
files are commented well enough that even <acronym title="Cascading Style Sheets">CSS</acronym>
novices can use them as starting points. Please see the <a href="http://www.mezzoblue.com/zengarden/resources/"
title="A listing of CSS-related resources"><acronym title="Cascading Style Sheets">CSS</acronym>
Resource Guide</a> for advanced tutorials and tips on working with <acronym title="Cascading Style Sheets">
CSS</acronym>.</span></p>
<p class="p2">
<span>You may modify the style sheet in any way you wish, but not the <acronym title="HyperText Markup Language">
HTML</acronym>. This may seem daunting at first if you’ve never worked this
way before, but follow the listed links to learn more, and use the sample files
as a guide.</span></p>
<p class="p3">
<span>Download the sample <a href="/zengarden-sample.html" title="This page's source HTML code, not to be modified.">
html file</a> and <a href="/zengarden-sample.css" title="This page's sample CSS, the file you may modify.">
css file</a> to work on a copy locally. Once you have completed your masterpiece
(and please, don’t submit half-finished work) upload your .css file to a web
server under your control. <a href="http://www.mezzoblue.com/zengarden/submit/" title="Use the contact form to send us your CSS file">
Send us a link</a> to the file and if we choose to use it, we will spider the
associated images. Final submissions will be placed on our server.</span></p>
</div>
<div id="benefits">
<h3>
<span>Benefits</span></h3>
<p class="p1">
<span>Why participate? For recognition, inspiration, and a resource we can all refer
to when making the case for <acronym title="Cascading Style Sheets">CSS</acronym>-based
design. This is sorely needed, even today. More and more major sites are taking
the leap, but not enough have. One day this gallery will be a historical curiosity;
that day is not today.</span></p>
</div>
<div id="requirements">
<h3>
<span>Requirements</span></h3>
<p class="p1">
<span>We would like to see as much <acronym title="Cascading Style Sheets, version 1">
CSS1</acronym> as possible. <acronym title="Cascading Style Sheets, version 2">CSS2</acronym>
should be limited to widely-supported elements only. The css Zen Garden is about
functional, practical <acronym title="Cascading Style Sheets">CSS</acronym> and
not the latest bleeding-edge tricks viewable by 2% of the browsing public. The only
real requirement we have is that your <acronym title="Cascading Style Sheets">CSS</acronym>
validates.</span></p>
<p class="p2">
<span>Unfortunately, designing this way highlights the flaws in the various implementations
of <acronym title="Cascading Style Sheets">CSS</acronym>. Different browsers display
differently, even completely valid <acronym title="Cascading Style Sheets">CSS</acronym>
at times, and this becomes maddening when a fix for one leads to breakage in another.
View the <a href="http://www.mezzoblue.com/zengarden/resources/" title="A listing of CSS-related resources">
Resources</a> page for information on some of the fixes available. Full browser
compliance is still sometimes a pipe dream, and we do not expect you to come up
with pixel-perfect code across every platform. But do test in as many as you can.
If your design doesn’t work in at least IE5+/Win and Mozilla (run by over
90% of the population), chances are we won’t accept it.</span></p>
<p class="p3">
<span>We ask that you submit original artwork. Please respect copyright laws. Please
keep objectionable material to a minimum; tasteful nudity is acceptable, outright
pornography will be rejected.</span></p>
<p class="p4">
<span>This is a learning exercise as well as a demonstration. You retain full copyright
on your graphics (with limited exceptions, see <a href="http://www.mezzoblue.com/zengarden/submit/guidelines/">
submission guidelines</a>), but we ask you release your <acronym title="Cascading Style Sheets">
CSS</acronym> under a Creative Commons license identical to the <a href="http://creativecommons.org/licenses/by-nc-sa/1.0/"
title="View the Zen Garden's license information.">one on this site</a>
so that others may learn from your work.</span></p>
<p class="p5">
<span>Bandwidth graciously donated by mediatemple.
Now available: <a href="https://rads.stackoverflow.com/amzn/click/com/0321303474" rel="nofollow noreferrer">
Zen Garden, the book</a>.</span> </p>
</div>
<div id="footer">
<a href="http://validator.w3.org/check/referer" title="Check the validity of this site’s XHTML">
xhtml</a> <a href="http://jigsaw.w3.org/css-validator/check/referer" title="Check the validity of this site’s CSS">
css</a> <a href="http://creativecommons.org/licenses/by-nc-sa/1.0/" title="View details of the license of this site, courtesy of Creative Commons.">
cc</a> <a href="http://mezzoblue.com/zengarden/faq/#s508" title="Read about the accessibility of this site">
508</a> <a href="http://www.mezzoblue.com/zengarden/faq/#aaa" title="Read about the accessibility of this site">
aaa</a>
</div>
</div>
<div id="linkList">
<div id="linkList2">
<div id="lselect">
<h3 class="select">
<span>Select a Design:</span></h3>
<ul>
<li><a href="?cssfile=/213/213.css&page=0" title="AccessKey: a" accesskey="a">Under
the Sea!</a> by Eric Stoltz</li>
<li><a href="?cssfile=/212/212.css&page=0" title="AccessKey: b" accesskey="b">Make
’em Proud</a> by <a href="http://skybased.com/" class="c">Michael McAghon and
Scotty Reifsnyder</a></li>
<li><a href="?cssfile=/211/211.css&page=0" title="AccessKey: c" accesskey="c">Orchid
Beauty</a> by Kevin Addison</li>
<li>Oceanscape
by Justin Gray</li>
<li><a href="?cssfile=/209/209.css&page=0" title="AccessKey: e" accesskey="e">CSS
Co., Ltd.</a> by Benjamin Klemm</li>
<li>Sakura
by Tatsuya Uchida</li>
<li><a href="?cssfile=/207/207.css&page=0" title="AccessKey: g" accesskey="g">Kyoto
Forest</a> by John Politowski</li>
<li><a href="?cssfile=/206/206.css&page=0" title="AccessKey: h" accesskey="h">A
Walk in the Garden</a> by <a href="http://users.skynet.be/bk316398/temp.html" class="c">
Simon Van Hauwermeiren</a></li>
</ul>
</div>
<div id="larchives">
<h3 class="archives">
<span>Archives:</span></h3>
<ul>
<li><a href="/?cssfile=/001/001.css&page=1" title="View next set of designs. AccessKey: n"
accesskey="n"><span class="accesskey">n</span>ext designs »</a></li>
<li><a href="http://www.mezzoblue.com/zengarden/alldesigns/" title="View every submission to the Zen Garden. AccessKey: w"
accesskey="w">Vie<span class="accesskey">w</span> All Designs</a></li>
</ul>
</div>
<div id="lresources">
<h3 class="resources">
<span>Resources:</span></h3>
<ul>
<li><a href="/001/001.css" title="View the source CSS file for the currently-viewed design, AccessKey: v"
accesskey="v"><span class="accesskey">V</span>iew This Design’s <acronym title="Cascading Style Sheets">
CSS</acronym></a></li>
<li><a href="http://www.mezzoblue.com/zengarden/resources/" title="Links to great sites with information on using CSS. AccessKey: r"
accesskey="r"><acronym title="Cascading Style Sheets">CSS</acronym> <span class="accesskey">
R</span>esources</a></li>
<li><a href="http://www.mezzoblue.com/zengarden/faq/" title="A list of Frequently Asked Questions about the Zen Garden. AccessKey: q"
accesskey="q"><acronym title="Frequently Asked Questions">FA<span class="accesskey">Q</span></acronym></a></li>
<li><a href="http://www.mezzoblue.com/zengarden/submit/" title="Send in your own CSS file. AccessKey: s"
accesskey="s"><span class="accesskey">S</span>ubmit a Design</a></li>
<li><a href="http://www.mezzoblue.com/zengarden/translations/" title="View translated versions of this page. AccessKey: t"
accesskey="t"><span class="accesskey">T</span>ranslations</a></li>
</ul>
</div>
</div>
</div>
</div>
<!-- These extra divs/spans may be used as catch-alls to add extra imagery. -->
<div id="extraDiv1">
<span></span>
</div>
<div id="extraDiv2">
<span></span>
</div>
<div id="extraDiv3">
<span></span>
</div>
<div id="extraDiv4">
<span></span>
</div>
<div id="extraDiv5">
<span></span>
</div>
<div id="extraDiv6">
<span></span>
</div>
</body>
</html>
The big comment kinda answers your question. The CSS Zen Garden is built as a novelty with tons of no-semantic-value tags and attributes to allow for infinite stylings. It's not meant as a model of how a real webpage should organize itself.
Using this sort of HTML in parts of your document where it's necessary is fine, since you're in charge of the CSS. Don't use this kind of markup where you don't need it, but it's perfectly acceptable in small amounts. The Zen Garden just puts it everywhere, just in case.

Resources