<?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>Monday By Noon &#187; Semantics</title>
	<atom:link href="http://mondaybynoon.com/tag/semantics/feed/" rel="self" type="application/rss+xml" />
	<link>http://mondaybynoon.com</link>
	<description>A resource for Web designers and developers to read about and discuss their craft.</description>
	<lastBuildDate>Wed, 08 Feb 2012 13:49:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>&#8226; Getting Back to Basics: Effective Use of Images</title>
		<link>http://mondaybynoon.com/feeder/?FeederAction=clicked&#038;feed=Posts+%28RSS2%29&#038;seed=http%3A%2F%2Fmondaybynoon.com%2F20090720%2Fgettingback-to-basics-effective-use-of-images%2F&#038;seed_title=%26%238226%3B+Getting+Back+to+Basics%3A+Effective+Use+of+Images</link>
		<comments>http://mondaybynoon.com/20090720/gettingback-to-basics-effective-use-of-images/#comments</comments>
		<pubDate>Mon, 20 Jul 2009 13:03:02 +0000</pubDate>
		<dc:creator>Jonathan Christopher</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[Semantics]]></category>
		<category><![CDATA[image]]></category>
		<category><![CDATA[images]]></category>

		<guid isPermaLink="false">http://mondaybynoon.com/?p=511</guid>
		<description><![CDATA[Imagery is a very important aspect in Web design. Are you using images properly?<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=511&c=853089050' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=511&c=853089050' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></description>
			<content:encoded><![CDATA[<p>As per usual, I spent the past week or so getting back to basics with a single element. Images are a huge part of the Web. Even more-so, images are a huge part of design. Imagery contributes to aesthetics which support design, but on the Web, imagery can be a subject by itself (and it is).</p>
<h2>Two types of images</h2>
<p>As designers, we realize that there are two &#8216;types&#8217; of images. Those which we reference in our style sheets which in turn inject imagery into a document, and those referenced within the markup itself.</p>
<p>Each type of image carries with it a specific purpose and value. At the most basic level, the fundamental difference between the two types of images is meaning. Images referenced in markup should contribute to that document in some meaningful way. Images included via stylesheets, however, should not carry with them any informational value.</p>
<p>I think it&#8217;s sometimes easy to forget that, even as you become a seasoned developer. The biggest issue I&#8217;ve noticed with myself, which in turn sparked my recent focus on the subject, was the arbitrary inclusion of image replacement when it wasn&#8217;t completely necessary.</p>
<h3>Images versus image replacement</h3>
<p>Image replacement is a technique near and dear to the hearts of many. Countless articles have been published on the subject, and it seems to be an applicable conversation to have on a fairly consistent basis. I myself have tried to add some value to the conversation by publishing a few pieces on the subject over the past couple years. Some of which include:</p>
<ul>
<li><a href="/2007/05/28/typography-in-headings-sifr-image-replacement/">Typography in Headings: sIFR? Image Replacement?</a></li>
<li><a href="/2006/10/23/my-latest-take-on-image-replacement/">My Latest Take on Image Replacement</a></li>
</ul>
<p>Looking back on those articles, I realize that I was still a bit overzealous when writing them. I think it&#8217;s part of every developers growing process to take new techniques under his or her wing after it is first learned, and run for the end zone with it. Image replacement is one of those techniques. When we first learn that our style is completely separate from our structure, every image becomes stylistic. We want to remove everything from the document and focus on keeping our markup and lean as possible. It turns out that for many, we optimize to a fault.</p>
<p>As of late, I&#8217;ve been questioning image replacement itself. By definition, when we use image replacement, we&#8217;re effectively injecting a meaningful image into the style layer of a document, all the while using various techniques to ensure the original content provided from markup is hidden from view. Through this process, we make it very difficult for assistive technologies to properly recognize the content as valuable.</p>
<p>Looking at Monday By Noon today, we can see that not only was I overzealous with image replacement, but also itching to use an image sprite as well. I can add those two items to the list of reasons I&#8217;d like to redesign!</p>
<p>Taking a step back and looking at the big picture, we can see that:</p>
<ol>
<li>Our markup is (mostly) solid, as we often need to include a possibly unnecessary <code>class</code>/<code>id</code> to act as a hook for our CSS</li>
<li>We&#8217;re abstracting a meaningful image</li>
<li>We&#8217;re attempting to inject that meaningful image through CSS</li>
<li>We force our original content out of sight by way of properties designed to obscure existing data</li>
</ol>
<p>We do all of this, yet HTML has provided us with an element dedicated to taking care of everything in one fell swoop. I&#8217;ve come to realize that <code>img</code> is an underused, undervalued element by many developers.</p>
<h3>Remembering to use <code>img</code> properly</h3>
<p>HTML provides us with the <code><a href="http://www.w3.org/TR/REC-html40/struct/objects.html#h-13.2">img</a></code> element. Not only can we include our meaningful images (i.e. headings) within the markup as intended, we can provide directly applicable alternate content (<code>alt</code> attribute and <code>longdesc</code> attribute) directly within the original document. It is by far the best way to gracefully degrade for imageless browsing, and abundantly more straightforward than any of the various image replacement techniques available to us.</p>
<p>We can&#8217;t forget the reasons we&#8217;ve tried and tested image replacement techniques, however. Modern Web design is far and beyond more complicated than HTML and CSS can support alone. We&#8217;re using the tools to their fullest potential, and then some. We have to get creative sometimes, and image replacement originated from a need.</p>
<p>My personal focus for the past few projects has been to get back to basics and use images in their original intention, and I must say that documents feel more stable, more structured. I like that I&#8217;m not obscuring information in any way, instead using the gifts HTML gave us to provide a seamless experience.</p>
<p>This approach has really only come into play for me when it comes to headings, more specifically static headings. Dynamic headings are a different subject entirely, something that deserves an entire article. The biggest hurdle with headings, however, is to make sure they blend with the surrounding environment. Make sure you&#8217;re using the Matte when saving a transparent GIF for Web, it will make your life that much easier:</p>
<p><img src="/images/gifmatte.jpg" alt="Screenshot of the Matte option in a Save for Web dialog in Adobe Photoshop CS4" /></p>
<p>Setting the matte on a transparent GIF will help you to match the edges of text to the background over which you&#8217;re laying the image. You&#8217;re probably wondering why we don&#8217;t use PNGs instead. I won&#8217;t get in to details but it starts with an I, ends with a 6, and has an E in there somewhere. Enough said on that topic.</p>
<p>Using images directly within headings can be an effective way to retain document structure for assistive technologies and search engine friendliness. Your heading markup can look something like:</p>
<pre class="sh_html"><code>&lt;h1&gt;&lt;img src=&quot;images/companyname.gif&quot; alt=&quot;Company Name&quot; /&gt;&lt;/h1&gt;</code></pre>
<p>Google should much prefer something like the above as opposed to an obscure image replacement technique. The information is blatantly available, and there is no overlapping meaning when it comes to the separation of structure and style, right?</p>
<h3>In conclusion</h3>
<p>I hope this throwback topic helps you to analyze how you&#8217;ve been using images in your designs as of late. Perhaps you, as I did, needed a quick refresher on the overall document as opposed to overusing a particular technique when it may not be needed.</p>
<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=511&c=1835201928' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=511&c=1835201928' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></content:encoded>
			<wfw:commentRss>http://mondaybynoon.com/20090720/gettingback-to-basics-effective-use-of-images/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>&#8226; Closing this Chapter on CSS Frameworks</title>
		<link>http://mondaybynoon.com/feeder/?FeederAction=clicked&#038;feed=Posts+%28RSS2%29&#038;seed=http%3A%2F%2Fmondaybynoon.com%2F20071119%2Fclosing-this-chapter-on-css-frameworks%2F&#038;seed_title=%26%238226%3B+Closing+this+Chapter+on+CSS+Frameworks</link>
		<comments>http://mondaybynoon.com/20071119/closing-this-chapter-on-css-frameworks/#comments</comments>
		<pubDate>Mon, 19 Nov 2007 13:27:24 +0000</pubDate>
		<dc:creator>Jonathan Christopher</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Favorites]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[Semantics]]></category>
		<category><![CDATA[Blueprint]]></category>
		<category><![CDATA[blueprintcss]]></category>
		<category><![CDATA[debate]]></category>
		<category><![CDATA[framework]]></category>

		<guid isPermaLink="false">http://mondaybynoon.com/2007/11/19/closing-this-chapter-on-css-frameworks/</guid>
		<description><![CDATA[Has the debate surrounding CSS frameworks been partially due to a misunderstanding of the term CSS framework?<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=108&c=9482783' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=108&c=9482783' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></description>
			<content:encoded><![CDATA[<p>A couple days ago, <a href="http://www2.jeffcroft.com/">Jeff Croft</a> posted an article titled <a href="http://www2.jeffcroft.com/blog/2007/nov/17/whats-not-love-about-css-frameworks/">What&#8217;s not to love	about CSS frameworks?</a> In the post, Mr. Croft simply asks for some reasoning behind <em>why</em> some people are suggesting <abbr title="Cascading Style Sheets">CSS</abbr> frameworks should not be used:</p>
<blockquote cite="http://www2.jeffcroft.com/blog/2007/nov/17/whats-not-love-about-css-frameworks/"><p>So it’s been made clear to me that these folks don’t like CSS frameworks and don’t think they should be used (except, in some cases, for rapid prototyping). What’s not clear to me is why they feel this way. So, I’m asking publicly, and hoping these folks will show up here to give me their answers: What is it about CSS frameworks that bothers you?</p>
</blockquote>
<p>I think that&#8217;s a completely valid question to ask, and with it being asked by someone whom is heard by many, he was sure to get many answers. Within hours, the comments came pouring in from many designers and developers, each giving a personal reaction to their experience with CSS frameworks. There were also some notes included which may have strayed from the articles main topic of CSS frameworks, and I&#8217;m going to stray from commenting on that issue because it wouldn&#8217;t be fitting for this post.</p>
<h2>The general problems with CSS frameworks</h2>
<p>I was really happy to see how much of a reaction Mr. Croft&#8217;s article received. While many people simply can&#8217;t understand why there is so much talk on a seemingly tiny subject, personally I&#8217;m glad to see it. I&#8217;m glad to see that there is something which can come under debate and be well argued by both sides. That&#8217;s not something you often find when it comes to modern Web design among intelligent, professional designers and developers.</p>
<p>While reading through the comments, the consensus from those who choose not to work with a CSS framework was nothing that has not been said before. Some people find a CSS framework limiting to their process or design methods, and others mentioned problems that tie into any framework. Learning to the framework instead of the technology itself, for example. While it was great that people were responding to the article, <a href="http://www2.jeffcroft.com/blog/2007/nov/17/whats-not-love-about-css-frameworks/#c24058">Mr. Croft mentioned</a> that after 30 comments, his question was still not directly answered.</p>
<p>That got me thinking, even though I had taken a minute to leave my thoughts, I thought I did answer his question in the best way I could. I mentioned why I personally wouldn&#8217;t use a CSS framework at this point and time, moreover included a bit of detail regarding why I wouldn&#8217;t recommend the use to a fellow developer quite yet. Other comments shared similar thoughts, while others completely opposite, but there was really no direct answer quite yet. This trend continued throughout the comment thread and really got me thinking.</p>
<p>Could the question be answered? I tried myself to come up with a definitive answer(s) why I&#8217;m not quite ready to adopt the use of a CSS framework, but found a rebuttal at least once in the comment thread alone. I then tried to put myself in the shoes of a developer who chooses to actively use a CSS framework and defend my camp from that angle. The same result occurred. It seems for many of the arguments either for or against CSS frameworks have a related counter-argument, which could be the reason this debate has been circular for so long.</p>
<h3>At the end of the day, <em>what is a CSS framework?</em></h3>
<p>After reading both the original post by Mr. Croft, and then his <a href="http://www2.jeffcroft.com/blog/2007/nov/18/follow-up-css-frameworks/">Follow up on CSS frameworks</a> (and each comment posted in reply), I&#8217;ve come to the conclusion that the majority, including myself, have associated the phrase &#8216;CSS framework&#8217; with <a href="http://code.google.com/p/blueprintcss/">blueprintcss</a>. That&#8217;s the first problem with the CSS framework debate as a whole. Mr. Croft pointed out that many people who opposed the use of a CSS framework (blueprintcss to be more accurate) were actually using one.</p>
<p>Mr. Croft mentioned that the definition he has had in his mind <a href="http://www.alistapart.com/articles/frameworksfordesigners" title="A List Apart article titled Frameworks for Designers by Jeff Croft">from the start</a> has been:</p>
<blockquote cite="http://www.alistapart.com/articles/frameworksfordesigners"><p>&#8230; a set of tools, libraries, conventions, and best practices that attempt to abstract routine tasks into generic modules that can be reused. The goal here is to allow the designer or developer to focus on tasks that are unique to a given project, rather than reinventing the wheel each time around. Generally speaking, this is the approach taken by the aforementioned JavaScript and web application frameworks. To be clear, we&#8217;re not necessarily talking about something that is built, packaged, and released to the public. Rather, a framework may be solely for you or your team.</p>
</blockquote>
<p>From this definition alone, it approaches silly to mention that [many] designers and developers aren&#8217;t doing such a thing already. I know I&#8217;ve said more than once that I use a preexisting set of folders and (sometimes empty) documents when starting a new project. While it is nothing compared to the level of blueprintcss, it is a reset style sheet, as well as a folder structure to save me a few minutes at the start of each project. At first, due to plain simplicity, it hardly occurred that such a system could be considered a framework, but I think that&#8217;s <em>exactly</em> the type of thing Mr. Croft is so diligently trying to defend.</p>
<h3>We&#8217;re all on the same team</h3>
<p>Many of the comments in response to the articles posted by Mr. Croft were a question why a topic such as this is debated so much. I can sympathize with that question, but at the same time, I&#8217;ve done my fair share discussing the topic because I find it interesting. There were many people on one side of the fence, seemingly just as many on the other, and a third group of people in the next field chatting about something completely different.</p>
<p>I&#8217;m glad Mr. Croft sparked what may act as the last great discussion surrounding CSS frameworks at this level of maturity. While I don&#8217;t see the debate dying out any time soon, I think these two articles, paired with their comments, are a great collection of thoughts after the initial introduction of blueprintcss (which put CSS frameworks on the map).</p>
<p>If you haven&#8217;t had the pleasure of doing so, take a few minutes soon and read over the articles and comments. Take some time to think about whether or not something as particular as blueprintcss or something as general as a reset style sheet is going to help you. The great thing is, designers and developers have reached a level where we can really begin to think about helping ourselves as much as possible. At the end of the day, we&#8217;re all on the same team, working for the same goal. Everyone has a different way of doing things, time and experience will certainly put any questions to bed. As the title of this piece explains, I think what has been said about CSS frameworks is quite comprehensive for this stage of maturity, but I&#8217;m more than willing to discuss the idea at any time.</p>
<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=108&c=1447352931' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=108&c=1447352931' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></content:encoded>
			<wfw:commentRss>http://mondaybynoon.com/20071119/closing-this-chapter-on-css-frameworks/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>&#8226; At What Point Do Semantics Not Apply?</title>
		<link>http://mondaybynoon.com/feeder/?FeederAction=clicked&#038;feed=Posts+%28RSS2%29&#038;seed=http%3A%2F%2Fmondaybynoon.com%2F20070917%2Fat-what-point-do-semantics-not-apply%2F&#038;seed_title=%26%238226%3B+At+What+Point+Do+Semantics+Not+Apply%3F</link>
		<comments>http://mondaybynoon.com/20070917/at-what-point-do-semantics-not-apply/#comments</comments>
		<pubDate>Mon, 17 Sep 2007 14:18:34 +0000</pubDate>
		<dc:creator>Jonathan Christopher</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[Semantics]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[Blueprint]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://mondaybynoon.com/2007/09/17/at-what-point-do-semantics-not-apply/</guid>
		<description><![CDATA[Are semantics completely inapplicable when it comes to CSS? Do you feel as though trying to create semantic classes is simply overzealous? Without the structured definition and documentation of (X)HTML to back it up, is CSS better left to be implemented on a &#8216;what works&#8217; basis? Are semantic names that only describe visual orientation as meaningful as valuable as those which describe the informational meaning?<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=99&c=682701378' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=99&c=682701378' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></description>
			<content:encoded><![CDATA[<p>There was a large response to the article I posted a couple weeks ago, <a href="/2007/08/27/please-do-not-use-css-frameworks/">Please Do Not Use CSS Frameworks</a>, which for the most part was evenly divided. There are many people who support and stand behind both the creation and implementation of <abbr title="Cascading Style Sheets">CSS</abbr> frameworks. They truly see the benefit in saving time in development as well as having a more structured environment in which to work.</p>
<p>I can absolutely see the benefit to a <abbr title="Cascading Style Sheets">CSS</abbr> framework in that regard, and I think that&#8217;s where my sensational title of a couple weeks ago skewed the tone of the entire article. Some readers (understandably) felt that I saw absolutely no worth in a project such as a <abbr title="Cascading Style Sheets">CSS</abbr> framework. That&#8217;s not the case, entirely. I simply see some issues that could be counteractive, and those issues can [usually] be applied to nearly any framework in existence.</p>
<p>Frameworks are a fantastic idea, <strong>fantastic</strong>, but I&#8217;m sure we can all agree that there is an extremely high potential for &#8216;learning the framework&#8217; as opposed to learning the language itself. This is a major issue to keep in mind, especially with something like <abbr title="Cascading Style Sheets">CSS</abbr>. One of the other issues I&#8217;ve got with the implementation of a CSS framework is <a href="http://en.wikipedia.org/wiki/Semantic_Web">semantics</a>.</p>
<h2>Semantics and CSS? Applicable?</h2>
<p>The resulting discussion surrounding the release of <a href="http://code.google.com/p/blueprintcss/">Blueprint</a> itself has been utterly fantastic. Many great minds have left opinions on the release. The pros, the cons, the ridiculousness surrounding the reaction of such a release. I&#8217;ve tried to read as much as I can of this conversation, and some interesting ideas and thoughts have come up.</p>
<p>One of the more interesting points brought up was that surrounding the semantics of <code>class</code> and <code>id</code> names. While I feel that semantic value can be given to a <code>class</code> or <code>id</code>, other developers thought it was simply ridiculous, that they are there to act [more-or-less] as hooks for CSS and JavaScript. Others felt that the <code>classes</code> and <code>ids</code> used in Blueprint are applicable because values such as <code>.prepend-8</code>, <code>.pull-2</code>, and <code>.span-22</code> were spot on in their use.</p>
<p>My stance is the following: if a <code>class</code> or <code>id</code> can be given a more descriptive value, why not? While some developers feel that it is the markup which needs to be semantic, I can see a value in trying to <a href="http://www.w3.org/QA/Tips/goodclassnames">create more semantic <code>classes</code></a> and <code>ids</code>. <a href="http://microformats.org/">Microformats</a> are a prime example. Microformats may not use values which are initially obvious to their meaning, but their objective is such. Microformats use <code>classes</code> in an effort to better define data in a semantic way. Why not try to carry this over to the rest of your document?</p>
<p>From what I can gather, it seems as though some developers feel that trying to create a semantic <code>class</code> or <code>id</code> is just silly. What do you think? Is a <code>class</code> little more than a hook for CSS to apply some style?</p>
<h3>Are semantics applicable with only an associated meaning?</h3>
<p>Microformats make sense to those who have worked with them before. Each <code>class</code> has a meaning because there is a large set of documentation to back it up. Without that documentation, would the <code>class</code> still be semantic? This same issue carries over to Blueprint. At first glance, the <code>classes</code> used are awkward and seemingly meaningless &#8212; until you read the documentation. Is it at that point they obtain semantic value?</p>
<p>I think to those who have come to accept and use Blueprint on their projects, there is a resounding <em>yes</em>. This concept (and reaction) is closely related to Microformats; some people agree, others don&#8217;t. If you&#8217;re <a href="http://code.google.com/p/blueprintcss/wiki/Tutorial">familiar with the framework</a>, Blueprint has attempted to keep <code>class</code> names partially semantic.</p>
<h3>So, what&#8217;s the problem?</h3>
<p>While the <code>classes</code> within Blueprint attempt to retain semantics when taking the entire framework into consideration, it does so only to provide meaning for the visual elements involved. It is literally impossible for Blueprint to take into account the actual information presented. I think this is where the issues regarding semantics come into play.</p>
<p>Is there a divide when taking into consideration the semantics of <abbr title="(eXtensible) HyperText Markup Language">(X)HTML</abbr> versus the semantics of <code>classes</code>? Are they one in the same? (X)HTML has a set of defined tags, each of which inherits a meaning. CSS is different entirely, allowing the author to define much of which comprises a completed stylesheet. It is up to the author to understand a meaning applied to any <code>class</code> or <code>id</code> he chooses. Can semantics still be applied? In my opinion, yes they can. When I&#8217;ve got a project in front of me, I&#8217;ll try to best define the provided information using meaningful <code>classes</code> and <code>ids</code> not only to help me remain more organized, but also in an attempt to help others on my team get up to speed quickly when working with my markup and style.</p>
<p>I&#8217;m really quite curious to hear how others feel about this &#8216;situation&#8217;. Are semantics completely inapplicable when it comes to <abbr title="Cascading Style Sheets">CSS</abbr>? Do you feel as though trying to create semantic <code>classes</code> is simply overzealous? Without the structured definition and documentation of <abbr title="(eXtensible) HyperText Markup Language">(X)HTML</abbr> to back it up, is CSS better left to be implemented on a &#8216;what works&#8217; basis? Are semantic names that only describe visual orientation as meaningful as valuable as those which describe the informational meaning? Do you feel this topic is just beating a dead horse? Please, provide your opinion.</p>
<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=99&c=312162927' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=99&c=312162927' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></content:encoded>
			<wfw:commentRss>http://mondaybynoon.com/20070917/at-what-point-do-semantics-not-apply/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>&#8226; How to Retain Site Quality After Delivery</title>
		<link>http://mondaybynoon.com/feeder/?FeederAction=clicked&#038;feed=Posts+%28RSS2%29&#038;seed=http%3A%2F%2Fmondaybynoon.com%2F20070813%2Fhow-to-retain-site-quality-after-delivery%2F&#038;seed_title=%26%238226%3B+How+to+Retain+Site+Quality+After+Delivery</link>
		<comments>http://mondaybynoon.com/20070813/how-to-retain-site-quality-after-delivery/#comments</comments>
		<pubDate>Mon, 13 Aug 2007 13:32:56 +0000</pubDate>
		<dc:creator>Jonathan Christopher</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[Semantics]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[BBCode]]></category>
		<category><![CDATA[Markdown]]></category>
		<category><![CDATA[Textile]]></category>
		<category><![CDATA[WYSIWYG]]></category>
		<category><![CDATA[WYSIWYM]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://mondaybynoon.com/2007/08/13/how-to-retain-site-quality-after-delivery/</guid>
		<description><![CDATA[There are a number of ways for clients to make updates in various CMSs, but which is best?<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=92&c=315788692' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=92&c=315788692' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></description>
			<content:encoded><![CDATA[<p>Content management systems have done a great deal to change the way many websites are created and maintained. Quality content management systems are elegant in the way they organize and control a website, while sub-par installations often create mountains of extra work while degrading user experience.</p>
<h2>Destroying aesthetics with each update</h2>
<p>Personally, I think content management systems are an extremely effective way to increase functionality and organization of websites large and small.  They come in extremely handy when providing a website as a product for a client, allowing updates to be made at any time without the assistance of the site developer.  While all intentions can be positive, sometimes a gorgeous product can be all but destroyed upon delivery when it comes to creating or modifying site content.  With each update, a well thought out design can be further altered from original intention, reflecting poorly on the site aesthetics.  There are a number of ways for clients to make updates in various CMSs, but which is best?</p>
<h3><acronym title="What You See Is What You Get">WYSIWYG</acronym></h3>
<p>First and foremost is <acronym title="What You See Is What You Get">WYSIWYG</acronym> content editing. This option, to me, seems most appropriate for people who have no experience with <abbr title="(eXtensive) HyperText Markup Language">(X)HTML</abbr> and are looking for the easiest way to make updates to their content. It is probably the most attractive option for clients as it bridges a gap between the copy they&#8217;re editing on the back end and the copy displayed on the front end.</p>
<p>I&#8217;ve got a bit of a personal gripe with WYSIWYG editing, not only when it comes to any particular CMS, but in general as well (when it comes to the Web).  While there are benefits to this form of editing, they all lay with the particular user actually making the edits to the content.</p>
<p>Most of the time, the markup which results from WYSIWYG editing is far from semantic, and often gives the editor far too much control over how various elements appear.  All of a sudden, copy can be filled with long strings of bold, underlined, and italicized text simply because the icons are there to click.  Awkward font colors and sizes are suddenly used throughout the website, and greatly degrade the overall look and feel the original design worked to establish. What is the best way to handle something like this?</p>
<h3>Markdown &amp; Textile</h3>
<p>Plain text and readable editing systems have become a very popular way to give the ability to edit content while attempting to retain a semantic and valid document structure. While the resulting interaction is (more or less) easy to read and decipher, it still requires a bit of a learning curve to undertake. There is a certain breed of client that would be willing to put forth the effort to learn a tool such as <a href="http://daringfireball.net/projects/markdown/">Markdown</a> or <a href="http://textism.com/tools/textile/">Textile</a> in order to manage the content of their website.  To be completely honest, I would have to say the majority of clients I&#8217;ve directly worked with would greatly prefer a WYSIWYG editor. As a developer, however, I&#8217;d definitely prefer a plain text editing system simply because of the comfort in knowing the resulting markup will be valid and (mostly) conform to the styles established in the site design.</p>
<h3>BBCode</h3>
<p>Another system implemented in some of the wide range of CMSs is that of <a href="http://www.bbcode.org/">BBCode</a>, a markup language originally established for use in forums.  BBCode shares a bit of raw <abbr title="(eXtensive) HyperText Markup Language">(X)HTML</abbr> and Markdown/Textile in that plain language is used, but proper tags must be maintained in order to obtain your intended results. While this form of editing has more-or-less stuck to forum installations, it&#8217;s another method to consider.</p>
<p><span id="more-92"></span></p>
<h3><acronym title="What You See Is What You Mean">WYSIWYM</acronym></h3>
<p>There are many ways to implement a system of editing in a <abbr title="Content Management System">CMS</abbr>, each with their pros and cons. By far, the most attractive solution I&#8217;ve come across to date is <a href="http://www.standards-schmandards.com/2006/wysiwym/"><acronym title="What You See Is What You Mean">WYSIWYM</acronym></a> editing. The idea is a healthy blend between WYSIWYG to help make &#8216;the sale&#8217; to the client, while including the importance of each element used.  Styles can be directly applied in order to assist the editor visualize how published copy will appear, but proper attention is also given toward the markup involved.</p>
<p>At first glance, this system seems to seek the happy medium between client and developer approval. While the idea is fairly young (to me at least), and the flagship editor, <a href="http://www.wymeditor.org/en/">WYMeditor</a> is still in it&#8217;s infancy, I think this direction could bring some extremely positive results.</p>
<h4>Conclusion</h4>
<p>Content management systems try to cut the middle man out of site maintenance for site owners, but is it acceptable to completely stray from the way things work? Is hiding the markup that makes the Web work the right thing to do? Something about that doesn&#8217;t sit well with me completely. Playing <a href="http://en.wikipedia.org/wiki/Devil's_advocate">devil&#8217;s advocate</a>, does <abbr title="HyperText Markup Language">HTML</abbr> belong only in the hands of developers? I think this is a bit of a gray area, but I&#8217;d love to hear what many of you think.</p>
<p>All in all my personal favorite of this bunch is WYSIWYM editing. Having the benefits of a visual depiction as well as maintaining semantic value seem like the ideal situation to me. The trouble we face is the fact that our clients can not be expected to understand (or care about) the semantic Web, accessibility, or the intention behind our designs. Which system of editing does your CMS of choice employ? Have you had past projects lose aesthetic appeal as a result of giving editors too much freedom with editing? What do you feel is the most effective system of editing, both for the client as well as the semantic, accessible Web?</p>
<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=92&c=1152805959' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=92&c=1152805959' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></content:encoded>
			<wfw:commentRss>http://mondaybynoon.com/20070813/how-to-retain-site-quality-after-delivery/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>&#8226; Is Manipulating the DOM for Presentation Acceptable?</title>
		<link>http://mondaybynoon.com/feeder/?FeederAction=clicked&#038;feed=Posts+%28RSS2%29&#038;seed=http%3A%2F%2Fmondaybynoon.com%2F20070709%2Fis-manipulating-the-dom-for-presentation-acceptable%2F&#038;seed_title=%26%238226%3B+Is+Manipulating+the+DOM+for+Presentation+Acceptable%3F</link>
		<comments>http://mondaybynoon.com/20070709/is-manipulating-the-dom-for-presentation-acceptable/#comments</comments>
		<pubDate>Mon, 09 Jul 2007 13:22:19 +0000</pubDate>
		<dc:creator>Jonathan Christopher</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[Semantics]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://mondaybynoon.com/2007/07/09/is-manipulating-the-dom-for-presentation-acceptable/</guid>
		<description><![CDATA[Is manipulating the DOM to include extra markup needed to desired design elements acceptable?<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=87&c=1329774775' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=87&c=1329774775' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></description>
			<content:encoded><![CDATA[<p>Personally, I&#8217;m a big proponent of both <a href="http://en.wikipedia.org/wiki/Progressive_enhancement">progressive enhancement</a> as well as <a href="http://en.wikipedia.org/wiki/Fault-tolerance">graceful degradation</a> (fault tolerance).  While both concepts are similar in nature, they both possess small unique parts that set them apart.</p>
<p>To me, keeping graceful degradation in mind while developing will aim to leave you with a functioning document no matter the circumstances.  Progressive enhancement on the other hand, is a level of functionality present only if the reader has the needed technology readily available.  While it may seem that both are nearly identical, to me graceful degradation seems to be more passive in nature when comparing it to progressive enhancement, which is a more active.  Progressively enhancing a document gives the ability to make alterations where applicable in an effort to make a document that much more useful, while graceful degradation is more of a fall back plan.</p>
<h2>Separation of structure, style &amp; behavior</h2>
<p>At the root of <a href="http://en.wikipedia.org/wiki/Web_standards">Web standards</a> comes the idea of keeping the structure, style, and behavior of a document separated by making use of <abbr title="(eXtensible) HyperText Markup Language">(X)HTML</abbr>, <abbr title="Cascading Style Sheets">CSS</abbr>, and JavaScript, respectively.  While only a partial explanation of the idea behind Web standards, the separation is the basis for best practices and accepted techniques.  By keeping these three facets separate, you&#8217;re able to produce work with a caliber of maintainability and organization that otherwise goes unmatched.</p>
<p>While keeping structure, style, and behavior apart is a generally accepted practice by professionals and amateurs alike, we&#8217;re constantly faced with solutions that blend the technologies together.  There are many applications JavaScript which constantly make use of <code>element.style</code> or a comparable snippet which directly adjusts the rendered style of an element (or group of elements).  Lots of developers don&#8217;t see any issue with something like this because your end product is the desired change.  In my opinion, it&#8217;s easier for a designer to forget that the style and behavior of a document are being mixed simply due to the syntax of the JavaScript.  It is less apparent the style is directly being manipulated.</p>
<p>When looking at this circumstance in more detail, it becomes apparent that directly editing the style of an element via JavaScript can be juxtaposed to using a set of <code>font</code> tags to set some text apart.  In my opinion, a better way to handle something like this is to provide the element with a <code>class</code> as opposed to directly altering the rendered style.  This way, the only edit made using the <abbr title="Document Object Model">DOM</abbr> is an element&#8217;s <code>class</code>, which is styled within the style sheet.</p>
<h3>A more interesting situation</h3>
<p>While directly changing the style of an element can be easily resolved, there are many circumstances which make a solution much more complicated.  The combination of <abbr title="(eXtensible) HyperText Markup Language">(X)HTML</abbr> and <abbr title="Cascading Style Sheets">CSS</abbr> gives designers and developers a fantastic tool set to create amazing, accessible, standard websites.  While many great things can be done with markup and style alone, there are many times a design needs to be brought to the next level.  Whether it be a client request or an unforeseen hurdle during a design phase, there are certain times that <abbr title="(eXtensible) HyperText Markup Language">(X)HTML</abbr> and <abbr title="Cascading Style Sheets">CSS</abbr> aren&#8217;t going to provide everything needed by you as the designer or developer.</p>
<p>It is in those situations where JavaScript comes into play.  As many pieces of JavaScript directly manipulate the style of an element, but the core purpose of using JavaScript is directly manipulating the structure of a document.  Long ago this was accomplished using ugly instances of <code>document.write</code>, but that practice has been replaced by interaction with the <abbr title="Document Object Model">DOM</abbr>.  <abbr title="Document Object Model">DOM</abbr> scripting is a much more effective way to use JavaScript in an effort to control the behavior of your document.</p>
<p><span id="more-87"></span></p>
<h4>Using the <abbr title="Document Object Model">DOM</abbr> to prepare for your <abbr title="Cascading Style Sheets">CSS</abbr></h4>
<p>While many fantastic techniques have come from progressive enhancement through <abbr title="Document Object Model">DOM</abbr> scripting, there is an area of <abbr title="Document Object Model">DOM</abbr> scripting which I&#8217;ve become partially weary about implementing.  This gray area comes about when JavaScript is used to manipulate the <abbr title="Document Object Model">DOM</abbr> for the sole purpose of achieving an effect otherwise unattainable using semantic <abbr title="(eXtensible) HyperText Markup Language">(X)HTML</abbr> and <abbr title="Cascading Style Sheets">CSS</abbr>.  While the resulting markup is more than likely valid, after the application of JavaScript, it is bloated from additional nodes needed to achieve a desired effect.</p>
<p>I&#8217;m timid about using scripts such as these due to the fact that it seems as though you&#8217;re using the document behavior to alter the document structure for the sole purpose of styling the document differently.  It is a bit of a gray area to me because while the structure, style, and behavior are still maintained separately, the resulting markup is bloated and has lost semantic value at the cost of adding a design element that is not otherwise possible.</p>
<p>Going back to the original dilemma of a project requirement, however, solving the issue using a solution such as this seems more favorable than including the bloat in the markup from the start.  There has been an ongoing discussion regarding whether or not it&#8217;s required to provide valid and semantic markup when manipulating the <abbr title="Document Object Model">DOM</abbr>.  In my opinion it goes without question that the integrity of a document should be maintained regardless.  Simply because (many) search engines do not process JavaScript, you&#8217;re not given the liberty to do with the <abbr title="Document Object Model">DOM</abbr> what you please.  Expanding upon that, just as important is <a href="/2006/04/03/but-it-validates/">maintaining semantic markup</a> when manipulating the <abbr title="Document Object Model">DOM</abbr>.  This is where things become shaky as far as my stance is concerned.</p>
<p>On one hand you are striving to include a design element keeping best practices in mind, but on the other hand your resulting markup (after interacting with the <abbr title="Document Object Model">DOM</abbr>) is anything but ideal.  At this point, what is the solution?  Is it better to neglect the issue as a whole and work with what you&#8217;ve got?  Is a bit of code bloat while <abbr title="Document Object Model">DOM</abbr> scripting an issue that needs serious consideration?</p>
<p>Some time ago I was browsing the threads of a forum with a particular discussion being centered around proper markup used to create accessible <code>forms</code>.  I took a minute to provide my opinion, which, at the time seemed to me like the best solution.  The technique was using as little markup as possible in an effort to avoid code bloat, something I was working very hard to do in all cases.  Shortly after, two developers whom I hold in high regard, offered their opinion on the matter explaining the faults in my suggestion and offering their own.  The developers were <a href="http://snook.ca/jonathan/">Jonathan Snook</a> and <a href="http://warpspire.com/">Kyle Neath</a>, two people with opinions I greatly respect and use their writing to expand my own knowledge.  Their solution called for a bit of extra markup, but the additions made sense in the overall structure of the document in consideration.  Point being; not all additional markup can be labeled as bloat.</p>
<h4>Some questions I&#8217;d like to discuss</h4>
<p>I&#8217;ve got some questions for the community as a whole as a response to an issue such as this.  First and foremost: do you feel this is an issue at all?  Is it simply making effective use of accepted technologies to achieve results not otherwise possible?  Is using the <abbr title="Document Object Model">DOM</abbr> to generate bloated documents for the purpose of more elaborate style taking things to an unacceptable level?  As designers, should we only be allowed to work with the tools we&#8217;re given and leave design elements limited to what can be done with <abbr title="(eXtensible) HyperText Markup Language">(X)HTML</abbr> and <abbr title="Cascading Style Sheets">CSS</abbr> alone?  What other opinions do you have on the matter?</p>
<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=87&c=336858799' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=87&c=336858799' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></content:encoded>
			<wfw:commentRss>http://mondaybynoon.com/20070709/is-manipulating-the-dom-for-presentation-acceptable/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>&#8226; Are Inline Styles Sometimes Okay? When? Why?</title>
		<link>http://mondaybynoon.com/feeder/?FeederAction=clicked&#038;feed=Posts+%28RSS2%29&#038;seed=http%3A%2F%2Fmondaybynoon.com%2F20070625%2Fare-inline-styles-sometimes-okay-when-why%2F&#038;seed_title=%26%238226%3B+Are+Inline+Styles+Sometimes+Okay%3F+When%3F+Why%3F</link>
		<comments>http://mondaybynoon.com/20070625/are-inline-styles-sometimes-okay-when-why/#comments</comments>
		<pubDate>Mon, 25 Jun 2007 12:32:52 +0000</pubDate>
		<dc:creator>Jonathan Christopher</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[Semantics]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[images]]></category>
		<category><![CDATA[inline]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://mondaybynoon.com/2007/06/25/are-inline-styles-sometimes-okay-when-why/</guid>
		<description><![CDATA[Limitations range greatly from one CMS to another, some have embraced Web standards and produce semantically rich and valid markup, while others have put standards on the back burner.  One issue I&#8217;ve had some reoccurring trouble with in the past is the combination of a CMS with managed images that are part of the design as opposed to having informational value.<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=85&c=1756385397' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=85&c=1756385397' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></description>
			<content:encoded><![CDATA[<p>Nearly each and every project I work on professionally is heavily integrated with a custom Content Management System that has been developed by programmers on the team for many years.  What&#8217;s great about having a custom built <acronym title="Content Management System">CMS</acronym> is that I can personally talk to the developers regarding a feature request, and that feature can be added within the next few days, or even by that afternoon.  Content Management Systems are a great thing in my opinion, but like everything, they&#8217;ve got their limits.</p>
<p>Limitations range greatly from one CMS to another, some have embraced Web standards and produce semantically rich and valid markup, while others have put standards on the back burner.  One issue I&#8217;ve had some reoccurring trouble with in the past is the combination of a CMS with managed images that are part of the design as opposed to having informational value.  To be more clear, sometimes a client will request to have control over a piece of stock imagery represented on any number of pages.  This becomes an issue because traditionally, when images are uploaded in context, they&#8217;re treated as having informational value and included using an <code>img</code> tag with a descriptive <code>alt</code> attribute.</p>
<h2>So what&#8217;s the problem with inline images?</h2>
<p>There&#8217;s nothing at all wrong with inline images &#8212; as long as it is applicable that they be represented in the markup as an inline image.  When images are included in the markup, they <a href="/2006/03/20/semantic-image-use/">should have informational value</a>.  Images with the sole purpose of adding to the design can be better included via your style sheet as to preserve the separation of style and content.</p>
<p>Inline images definitely have their place on the Web, but it is a far different position than images used for the site design purposes only.  Those images should be included via the associated style sheets, defined either by hand, or through the theme management of the CMS. Keeping that in mind, there can be a time when images that should be defined using CSS are instead included via the CMS front end.</p>
<h3>What can be done about the situation?</h3>
<p>The trouble with trying to give a client control over design-oriented images is when it comes to referencing the dynamic content.  With inline images, it&#8217;s easy in that the image URL can be pulled from the back end and used in any way you please.  It becomes a bit harder when a style sheet needs to be updated with a change in URL. I&#8217;ve read an article or two about using PHP (or any other server side language) to generate style sheets on the fly, but including PHP <code>echo</code>s in CSS doesn&#8217;t sit well with me.  It also restricts that style sheet to the language in which it has been written, therefore forcing an otherwise unnecessary update should the style sheet be written strictly in CSS.</p>
<p>Another way to go about things would be to have the CMS handle a number of style sheets the can be, as was an original intention, cascaded upon one another.  These files could be generated, taking into consideration any images that are managed via the CMS, and then included with the site CSS.</p>
<p>A more abstract method that could be possible is using a static URL in your style sheet that references the dynamic image, but instead of updating the URL, the CMS will update the image file itself.  Effectively the URL remains the same, but the target image itself can be updated by the client via the CMS.</p>
<h4>What&#8217;s this got to do with inline styles?</h4>
<p>While any of the above can be considered a solution, not everybody has open access to the inner workings of their CMS.  Sometimes you&#8217;re literally stuck with an image URL and that&#8217;s all you get.  At this point, is it better to include the image as a <code>background-image</code> via inline CSS?  Is it acceptable to ignore document semantics and include the image inline?</p>
<p>In my personal opinion, I think I&#8217;d opt to go with using inline CSS and a <code>background-image</code> as opposed to sacrificing semantics.  While inline CSS is considered difficult to manage, in this case the CMS is doing the management for you. While the end result isn&#8217;t completely ideal, I have to consider it more appropriate than using an inline image.</p>
<p>Is this an issue you&#8217;ve ever had to worry about before?  Do you really consider it an issue at all?</p>
<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=85&c=341028458' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=85&c=341028458' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></content:encoded>
			<wfw:commentRss>http://mondaybynoon.com/20070625/are-inline-styles-sometimes-okay-when-why/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>&#8226; POSH: Semantic Markup for Driving Directions</title>
		<link>http://mondaybynoon.com/feeder/?FeederAction=clicked&#038;feed=Posts+%28RSS2%29&#038;seed=http%3A%2F%2Fmondaybynoon.com%2F20070611%2Fposh-semantic-markup-for-driving-directions%2F&#038;seed_title=%26%238226%3B+POSH%3A+Semantic+Markup+for+Driving+Directions</link>
		<comments>http://mondaybynoon.com/20070611/posh-semantic-markup-for-driving-directions/#comments</comments>
		<pubDate>Mon, 11 Jun 2007 13:11:19 +0000</pubDate>
		<dc:creator>Jonathan Christopher</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[Semantics]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[example]]></category>
		<category><![CDATA[Google-Maps]]></category>
		<category><![CDATA[POSH]]></category>

		<guid isPermaLink="false">http://mondaybynoon.com/2007/06/11/posh-semantic-markup-for-driving-directions/</guid>
		<description><![CDATA[Driving directions offer a lot of semantic data.  This article takes the semantics of driving directions into consideration and offers discussion about how to improve structural markup of directions.<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=83&c=791920611' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=83&c=791920611' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></description>
			<content:encoded><![CDATA[<p>One of my all time favorite Web apps to use has to be <a href="http://maps.google.com">Google Maps</a>.  I find myself using it not only because the data provided is that much more accurate than other services such as MapQuest (which has completely let me down repeatedly in the past), but because the service itself is becoming more multipurpose by the day.  Unfortunately, <a href="/2006/03/06/google-vs-web-standards-part-2/">when it comes to Google</a>, applications aren&#8217;t always implemented with <a href="/2006/11/06/flash-javascript-and-providing-alternative-content/">Web standards or graceful degradation</a> in mind.  Google apps are quite debilitated &#8212; if at all functional &#8212; with JavaScript disabled, and downright scary with no <abbr title="Cascading Style Sheets">CSS</abbr>.</p>
<p>Moving on, Google is using tables to mark up their driving directions provided via Google maps, but in my opinion, there&#8217;s a much better way.</p>
<p><img src="/images/google-maps.jpg" alt="[Image] Screenshot of Google Maps directions" /></p>
<p>There is actually quite a bit of information provided in simple driving directions.  For the purposes of this article, I&#8217;d just like to focus on the directions themselves, as opposed to the content offered before and after, as well as the maps that are (usually) included.</p>
<h3>Driving directions at their core</h3>
<p>At the very least, when providing driving directions, you&#8217;re compiling an ordered lists of steps that need to be followed in order to navigate from point A to point B.</p>
<pre><code>&lt;ol class="driving-directions">
  &lt;li>Head southeast on Crossgates Mall Rd - 0.2 mi&lt;/li>
  &lt;li>Turn left onto the Washington Ave Ext E ramp
    to I-90 Thruway/I-87 - 407 ft&lt;/li>
  &lt;li>Merge onto Washington Ave Ext - 0.9 mi&lt;/li>
  &lt;li>Continue on Washington Ave - 3.9 mi&lt;/li>
  &lt;li>Turn right at Robin St. - 417 ft>&lt;/li>
&lt;/ol></code></pre>
<p><span id="more-83"></span></p>
<p>While a single ordered list could be considered acceptable, there is quite a bit more information provided that has semantic value.  For instance, in each step of the ordered list, there is detail given as to what actions should be taken, as well as a measure of distance.  To me, this is a good place to include a definition list.  It seems fitting to mark up this pair of data using a definition list as you&#8217;re relating both the action and the distance traveled.  The distance traveled is a direct result of the action being taken so a definition list would work well.</p>
<pre><code>&lt;ol class="driving-directions">
  &lt;li>&lt;dl>&lt;dt>Head southeast on Crossgates Mall Rd&lt;/dt>
    &lt;dd>0.2 mi&lt;/dd>&lt;/dl>&lt;/li>
  &lt;li>&lt;dl>&lt;dt>Turn left onto the Washington Ave Ext E ramp
    to I-90 Thruway/I-87&lt;/dt>
    &lt;dd>407 ft&lt;/dd>&lt;/dl>&lt;/li>
  &lt;li>&lt;dl>&lt;dt>Merge onto Washington Ave Ext&lt;/dt>
    &lt;dd>0.9 mi&lt;/dd>&lt;/dl>&lt;/li>
  &lt;li>&lt;dl>&lt;dt>Continue on Washington Ave&lt;/dt>
    &lt;dd>3.9 mi&lt;/dd>&lt;/dl>&lt;/li>
  &lt;li>&lt;dl>&lt;dt>Turn right at Robin St.&lt;/dt>
    &lt;dd>417 ft&lt;/dd>&lt;/dl>&lt;/li>
&lt;/ol></code></pre>
<p>To me, using a combination of an ordered list as well as integrating a definition list results is a much more semantically rich set of driving directions.</p>
<h4>A quick note about <code>address</code></h4>
<p>From time to time, I&#8217;ll come upon some markup that uses <code>address</code> incorrectly.  <code>address</code> <a href="http://www.w3.org/TR/html401/struct/global.html#h-7.5.6">is defined</a> as:</p>
<blockquote cite="http://www.w3.org/TR/html401/struct/global.html#h-7.5.6"><p>The <code>address</code> element may be used by authors to supply contact information for a document or a major part of a document such as a form. This element often appears at the beginning or end of a document.</p>
</blockquote>
<p>Without reading the definition, I can understand why some people may assume that <code>address</code> is used to mark up a segment of data that represents any address, but in reality, it is used to distinguish how to contact those responsible for the document.  It isn&#8217;t applicable to use the <code>address</code> tag to mark up the street address of each step here.</p>
<h4>What about imagery in driving directions?</h4>
<p>Many times, driving directions include images which help to classify what information each instruction is providing.  There may be an arrow indicating which direction to turn, an interstate sign, or something like a traffic light to indicate a future encounter.  How should these images be included?  In my opinion, this is one of the times where <a href="/2006/03/20/semantic-image-use/">semantic image use</a> should be looked into.  Taking a step back and thinking about it, these images are unique in that they aren&#8217;t part of the site design.  They&#8217;re in place to convey pieces of information to the reader.  Making the adjustments to our example:</p>
<pre><code>&lt;ol class="driving-directions">
  &lt;li>&lt;dl>
    &lt;dt>Head southeast on Crossgates Mall Rd&lt;/dt>
    &lt;dd>0.2 mi&lt;/dd>&lt;/dl>&lt;/li>
  &lt;li>&lt;dl>
    &lt;dt>&lt;img src="images/turn-left.jpg" alt="Image signaling
    a left turn" />Turn left onto the Washington Ave Ext E ramp
    to I-90 Thruway/I-87&lt;/dt>
    &lt;dd>407 ft&lt;/dd>&lt;/dl>&lt;/li>
  &lt;li>&lt;dl>
    &lt;dt>Merge onto Washington Ave Ext&lt;/dt>
    &lt;dd>0.9 mi&lt;/dd>&lt;/dl>&lt;/li>
  &lt;li>&lt;dl>
    &lt;dt>Continue on Washington Ave&lt;/dt>
    &lt;dd>3.9 mi&lt;/dd>&lt;/dl>&lt;/li>
  &lt;li>&lt;dl>
    &lt;dt>&lt;img src="images/turn-right.jpg" alt="Image signaling a
    right turn" />Turn right at Robin St.&lt;/dt>
    &lt;dd>417 ft&lt;/dd>&lt;/dl>&lt;/li>
&lt;/ol></code></pre>
<p>Alternatively, it would be argued that the <code>dt</code> provides the instruction and the image is merely redundant.  I think that is the decision of the developer, but I do feel it is more applicable to include these &#8216;helper&#8217; images in this way as opposed to being a <code>background-image</code> to the <code>dt</code>.  What do you think?  Should an element be classed and provided a <code>background-image</code> as opposed to including the image inline?  What other ideas do you have to improve the example?</p>
<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=83&c=868450197' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=83&c=868450197' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></content:encoded>
			<wfw:commentRss>http://mondaybynoon.com/20070611/posh-semantic-markup-for-driving-directions/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>&#8226; A Semantic Breakdown of Restaurant Menus</title>
		<link>http://mondaybynoon.com/feeder/?FeederAction=clicked&#038;feed=Posts+%28RSS2%29&#038;seed=http%3A%2F%2Fmondaybynoon.com%2F20070514%2Fa-semantic-breakdown-of-restaurant-menus%2F&#038;seed_title=%26%238226%3B+A+Semantic+Breakdown+of+Restaurant+Menus</link>
		<comments>http://mondaybynoon.com/20070514/a-semantic-breakdown-of-restaurant-menus/#comments</comments>
		<pubDate>Mon, 14 May 2007 12:14:21 +0000</pubDate>
		<dc:creator>Jonathan Christopher</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Examples]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[Semantics]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[definition-list]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[menu]]></category>
		<category><![CDATA[POSH]]></category>

		<guid isPermaLink="false">http://mondaybynoon.com/2007/05/14/a-semantic-breakdown-of-restaurant-menus/</guid>
		<description><![CDATA[This article takes into consideration a restaurant menu and discusses what makes the most semantic sense when marking one up using HTML.<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=79&c=1583604414' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=79&c=1583604414' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></description>
			<content:encoded><![CDATA[<p>Personally, one of my biggest interests in <abbr title="HyperText Markup Language">HTML</abbr> is the semantic nature of the language when used correctly to mark up a document.  I enjoy thinking about what markup is most appropriate for a given piece.  <abbr title="HyperText Markup Language">HTML</abbr> has been long abused by many Web developers who do not understand the concept of semantics, and how much weight a tag you use can carry when used for its true purpose.  Improper semantic use of <abbr title="HyperText Markup Language">HTML</abbr> tags is the root of many problems of the modern Web.  The most widely spread problem that comes to mind is the use of <code>tables</code> to structure a site design.  Web developers now (should) know that there are more appropriate ways to structure their design using <abbr title="Cascading Style Sheets">CSS</abbr>.  Semantics goes far beyond not using a <code>table</code> for your layout, and by nature semantics can be debated.  The call for discussion associated with semantics is another reason I enjoy Web development as much as I do.  When speaking with intelligent developers, lots of great conversation can be had regarding specific examples of semantic markup.</p>
<p>When browsing around the Web lately, I&#8217;ve been excited to read that many other developers seem to feel the same way as me.  A new discussion has been brewing among Web developers on the topic of <abbr title="Plain Old Semantic HTML">POSH</abbr>.  This recent revival seemed to at least partially stem from an article written by Jeremy Keith entitled <a href="http://adactio.com/journal/1287"><abbr title="Plain Old Semantic HTML">POSH</abbr> Patterns</a>.  <a href="http://microformats.org/wiki/posh">POSH</a> (Plain Old Semantic <abbr title="HyperText Markup Language">HTML</abbr>) has the potential of becoming a buzzword much like &#8220;Ajax&#8221; and &#8220;Web 2.0&#8243;, but to me, this buzzword stands out from the rest.  Should <abbr title="Plain Old Semantic HTML">POSH</abbr> catch on in the same way, it would benefit not only each and every developer who researches it, but any website they work on as well.  It is, by nature, difficult to abuse or misuse.</p>
<p>I&#8217;d like to start doing my part in spreading the word about <abbr title="Plain Old Semantic HTML">POSH</abbr> in starting a sporadic series of articles on the subject, much like the &#8216;<a href="/2007/02/26/improving-your-process-css-techniques-part-1/">Improving your Process</a>&#8216; series.  In the articles I&#8217;ll take a real world example that will hopefully be found useful by developers at some point in their career.  I&#8217;m also hoping that the articles will spark some lively conversation in both agreement and opposition to anything I bring up.  I don&#8217;t want the articles to be looked at as the final word in the least, I&#8217;d just like to offer my opinions and be completely open to any and all reactions.</p>
<p>The first article in this series, had I thought of it at the time, would have to be my <a href="/2006/07/24/calendar-semantics-table-or-list/">questioning of calendar semantics</a>, an article in which I ask which is more appropriate for marking up a calendar: a table or a list?  There were some great comments in response to that article and I hope a similar situation results from those upcoming in the series.</p>
<h2>Applying <abbr title="Plain Old Semantic HTML">POSH</abbr> to restaurant menus</h2>
<p>The first official article in this series is going to take a close look at how you could mark up a menu for a client running a restaurant.  When you think about a menu, most of the time the name of the dish is offered, as well as a description and of course, a price.  When you break down what needs to be marked up, we&#8217;re given the ability to analyze how elements can be used in cooperation with semantic <abbr title="HyperText Markup Language">HTML</abbr>.</p>
<p>There are a number of ways you could mark up a restaurant menu, the most simple that comes to mind is a group of headings and paragraphs which hold the dish name and description/price, respectively.  That&#8217;s not the worst way to go about things, but there is something better that can be done.  <a href="http://www.w3.org/TR/html#h-10.3">Definition lists</a> seem like a perfect way to handle marking up a restaurant menu.</p>
<h3>Definition lists are, in my opinion, underrated</h3>
<p><a href="http://www.w3.org/TR/html#h-10.3">Definition lists</a> are something I find myself using all the time since discovering their usefulness.  If you take a look at a project you&#8217;re currently working on, there&#8217;s a good possibility a list you&#8217;re using could be considered a definition list.  Definition lists are not strictly limited to terms and their definitions.  Definition lists are used to list items that consist of two parts: a term and a description.  There are many times that a list of items consists of two parts that are directly related.</p>
<p><span id="more-79"></span></p>
<p>Beyond their semantic usefulness, definition lists are quite a blessing when it comes to styling them.  The elements are structured in a way which allows you to achieve a very organized and tidy look without bloating your markup.  If you aren&#8217;t currently making use of definition lists on a fairly consistent basis, I&#8217;d highly recommend it <em>where applicable</em>.</p>
<h3>Applying a definition list to a menu</h3>
<p>When marking up a restaurant menu, I would include the dish name as a <code>dt</code> element, and then the description and price as separate <code>dd</code> elements.  To me this makes sense because both the description and price are directly related to the dish title.  Keeping <abbr title="Plain Old Semantic HTML">POSH</abbr> in mind helps us to also provide meaningful <code>class</code> names for the elements by applying <code>class="price"</code> and <code>class="description"</code> to each <code>dd</code> not only to distinguish a difference between the two, but will also help out with styling the list.</p>
<pre><code>&lt;dl>
  &lt;dt>A Sample Dish Du Jour&lt;/dt>
  &lt;dd class="price">$8.99&lt;/dd>
  &lt;dd class="description">&lt;p>Lorem ipsum dolor sit amet,
    consectetuer adipiscing elit. Morbi suscipit urna placerat
    turpis. Vivamus id sapien eu augue pellentesque tincidunt.
    Proin vel ante aliquet pede congue porta.&lt;/p>&lt;/dd>
&lt;/dl></code></pre>
<p>There are also some items on a menu that may not have either a price listed (if the prices are noted elsewhere) or a description (for something like the soup du jour).  Those items can simply be left out, and the associated <code>class</code> will help to keep your styles in tact.</p>
<h4>Other elements required by a restaurant menu</h4>
<p>Not everything included in a restaurant menu can be marked up using a single definition list.  In actuality, multiple definition lists, headings, and other lists will be needed to effectively mark up an entire menu.  The different menu sections can be included in their own <code>div</code> including their own heading, as well as class to help distinguish a lunch menu from a dinner menu for example.</p>
<p>Going further, every list in a menu won&#8217;t always be a definition list.  There is often a need for an unordered list for one reason or another in a restaurant menu.  What counts is that each section is taken into consideration and ends up using what makes the most semantic sense.  There will also more than likely be an appropriate place to use an <code>address</code> element, providing any location details or phone numbers for the restaurant.</p>
<p>I&#8217;ve attempted to be mildly general in taking restaurant menus into consideration.  It&#8217;s very likely that there will be more to take into consideration when actually implementing a menu, but hopefully this article has set the wheels in motion as far as a thought track is considered.  Have you had to implement a menu online before?  What markup did you use?  Do you agree that a definition list is the way to go from here on out?  Or do you think I&#8217;m completely wrong and feel that there&#8217;s a better way?  What other opinions do you have on the matter?</p>
<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=79&c=1567596065' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=79&c=1567596065' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></content:encoded>
			<wfw:commentRss>http://mondaybynoon.com/20070514/a-semantic-breakdown-of-restaurant-menus/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>&#8226; My Development and Design Process</title>
		<link>http://mondaybynoon.com/feeder/?FeederAction=clicked&#038;feed=Posts+%28RSS2%29&#038;seed=http%3A%2F%2Fmondaybynoon.com%2F20070129%2Fmy-development-and-design-process%2F&#038;seed_title=%26%238226%3B+My+Development+and+Design+Process</link>
		<comments>http://mondaybynoon.com/20070129/my-development-and-design-process/#comments</comments>
		<pubDate>Mon, 29 Jan 2007 14:12:10 +0000</pubDate>
		<dc:creator>Jonathan Christopher</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[Semantics]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://mondaybynoon.com/2007/01/29/my-development-and-design-process/</guid>
		<description><![CDATA[Inspired by a post put together from Jonathan Snook, here&#8217;s a look into my development process.<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=62&c=1290958901' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=62&c=1290958901' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></description>
			<content:encoded><![CDATA[<p>When first teaching myself <abbr title="Cascading Style Sheets">CSS</abbr>, I often became frustrated making sense of the whole thing.  I was used to wrapping my content in presentational markup and everything obviously happening for a reason.  I read as much as I could about CSS and the separation of structure and style.  As I read more, I could see that my markup began to make more sense, I was applying semantics to document markup and it felt like I was starting to make the most of what <abbr title="eXtensible HyperText Markup Language">XHTML</abbr> and CSS had to offer.</p>
<p>To this day, I try to read as much as I possibly can about design and development, and I&#8217;m always seeing new and improved ways of doing things.  <em>Not because it&#8217;s using the latest trend on the Web</em>, but because it makes more semantic sense, or is more accessible.  In the long run, that is what&#8217;s important.</p>
<p>Developing the standard, semantic, and accessible Web is an ever changing process.  As time moves on, there are better and more effective methods of presenting information (and design).  I&#8217;m constantly looking at past projects, realizing there are aspects that <em>need to be updated</em> as there are better ways to do certain things.  It could be a single document element, or an entire range of things that spread site-wide.  The point I&#8217;m trying to make is that when it comes to Web development, it&#8217;s impossible to know everything, and it&#8217;s important to <em>want to keep learning</em>.</p>
<h2>My Development Begins with the Markup</h2>
<p>I quickly learned that it&#8217;s much more time effective to separate the development of a website into parts; markup and style.  When starting work on a new project, I&#8217;ll usually receive an approved mock from a designer.  My first step is an attempt to envision the overall structure of the document.  I&#8217;ll first pick out the overall structural elements that need to be put in place.  From there I&#8217;ll pick out such things as divisions, lists, paragraphs, headings, and definition lists, as those are the most common elements I end up working with.  This process of envisioning the document structure doesn&#8217;t take long, but proves to be extremely valuable.</p>
<p>Take, for example, a page of Google search results:</p>
<p>
  <a href="/examples/google/google_basic_reference.jpg"><br />
    <img src="/examples/google/google_basic_reference_thumb.jpg" alt="[Image] Screenshot of Google search results with an overlay of structural elements" /><br />
  </a>
</p>
<p><span id="more-62"></span></p>
<p><img src="/examples/google/google_reference_legend.jpg" alt="Legend for screenshot overlay" /></p>
<p>A <a href="http://www.google.com" title="Google search engine">Google</a> <abbr title="Search Enginge Results Page">SERP</abbr> isn&#8217;t the most involved design, but I think it gives good insight as to what I&#8217;m talking about when I say that I try to visualize the structural elements of a design mock before I begin writing markup.  Usually now when I&#8217;m faced with a mock, it&#8217;s hard not to think about what elements would be best to structure the end design.</p>
<p>Ideally, when a new project is started, I like setting up the site during the time the designers are working on mock approval.  Although it doesn&#8217;t happen with every project, it helps when it does.  The site design should not distract your markup from being semantic.  Having a working version of the website put together with no style is comparable to <a href="/2006/12/18/site-testing-with-text-based-browsers/" title="Article about testing websites with text-based browsers">viewing the end product in a text-based browser</a>, as the style doesn&#8217;t visually structure the content and you&#8217;re <a href="http://naked.dustindiaz.com" title="Dustin Diaz's CSS Naked Day">browsing naked documents</a>.  More often than not, if I&#8217;m able to mark up the site before a mock is approved, I&#8217;ll have to go back and add some structural divisions or make some other adjustments, but they&#8217;re usually minimal.</p>
<p>I will <em>always suggest writing your markup first</em>, as it will allow you to give more focus to the semantic value of each element.  It will help you to keep your code organized and clean, which in turn helps keep <a href="/2006/04/03/but-it-validates/" title="Validation isn't everything, keep your documents semantic">control of validation errors</a>.  You&#8217;re able to limit your markup to an acceptable minimum and put everything in a logical order, as opposed to moving elements around in order to compensate for your CSS.</p>
<h3>Producing the images needed for the design</h3>
<p>Once I have the markup complete, I will begin to think about the design.  The first step for me is gathering all of the images that when put together, will form the design in its entirety.  This step has become easier as I put together more websites in that I&#8217;m able to think about images as a <code>background-image</code>, visualizing their repetition where applicable.  Experience will also provide you with knowledge about specific cases where one technique will work out significantly better than another.  I realize that&#8217;s a very big generalization, but it&#8217;s hard to get much more specific as every design is completely different than the last.  The process becomes increasingly easy with each project as you pick up your own tricks along the way.</p>
<p>I try to have a naming convention as far as images are concerned.  That way, when it comes to referencing them in my CSS, I can easily tell which image belongs where.  I usually give background images a &#8216;bg_&#8217; prefix followed by a meaningful identifier.  Navigation images can also be prefixed with &#8216;nav_&#8217;.  There are also other project-specific cases where a prefix can come in handy.  Another technique I&#8217;m a big fan of is working with are <a href="http://alistapart.com/articles/sprites/" title="A List Apart article about CSS sprites">CSS sprites</a>, which are easily identified if you use a descriptive filename.  They help keep image file counts down, and limit the number of requests that need to be made on a page load.  I choose to use file prefixes as it keeps them more organized not only for active use, but also when viewing them in a file browser or FTP client.</p>
<h4>Now it&#8217;s time to apply the <abbr title="Cascading Style Sheets">CSS</abbr></h4>
<p>After all of that is done, now is when I apply the style to my markup.  I have been writing CSS in the same style for quite some time now, but I&#8217;m always open for new <a href="/2006/02/19/write-better-css/" title="Article including some tips and tricks for writing better CSS">tips on writing better CSS</a>.  It is at this time markup elements are given their <code>class</code> and <code>id</code> names, and the markup is styled according to the design mock.</p>
<p>As I style the document, I&#8217;m constantly looking for repetitious properties and values in order to keep my style sheet streamlined and as light as possible.  I&#8217;ll also keep a close eye on known pitfalls I&#8217;ve run into in the past, such as trying to avoid the cross browser box model issues.  I write as much style as possible before checking things out in a browser, as it slows down the overall process.  It&#8217;s more difficult to do as you&#8217;re defining the visual structure, but there are many times you can style an element with no need to double check yourself in a browser.</p>
<h5>Cross browser testing</h5>
<p>After I&#8217;m satisfied with the markup and <abbr title="Cascading Style Sheets">CSS</abbr>, I begin a barrage of browser testing.  My browser of choice for development is Firefox, so the mere fact the document was under constant using that browser, it goes without further testing.  I&#8217;ll then move on to <abbr title="Internet Explorer 6">IE6</abbr>, and <a href="/2006/05/15/i-vote-conditional-comments/" title="Article on the purpose and benefit of conditional comments">using conditional comments</a>, I&#8217;ll put together a separate style sheet containing all the fixes IE6 needs.  This process is repeated for <abbr title="Internet Explorer 7">IE7</abbr>, which still definitely has it&#8217;s share of quirks that need to be handled.</p>
<p>Beyond Internet Explorer, I will also test in the latest version of <a href="http://www.opera.com/">Opera</a>, and then move on to <a href="http://www.konqueror.org/features/browser.php" title="Konqueror Web Browser">Konqueror</a>, as it uses the <a href="http://en.wikipedia.org/wiki/KHTML" title="KHTML rendering engine">KHTML</a> rendering engine, which is as close as I can get to <a href="http://www.apple.com/safari/" title="Apple's Safari Web browser">Safari</a> within <a href="/2006/07/03/linux-and-web-development-intro/" title="Account of Web development using Linux">my Linux install</a>.  I&#8217;ll always take a final step to test in a legitimate install of Safari in <a href="http://www.apple.com/macosx/" title="Apple's OS X operating system">OS X</a> as well, but testing in Konqueror does help expose some pitfalls before having to move to a different machine for testing.</p>
<h5>Putting together a print version of the document</h5>
<p>After all the above has been done, one of the last steps I perform is <a href="/2006/05/01/beautify-your-print-css/" title="Tips on using CSS to style a Web page for printing">preparing the document for print using CSS</a>.  There is a lot you can do to make sure that the printed version of a document is presented in a way that proves useful as hard copy. Again, many times conditional comments are used to ensure the print version renders correctly in Internet Explorer.</p>
<p>Last, but absolutely not least, the website is put through the validation paces.  I have a constant eye on my markup and style validation, but always run them through the official tests provided by the <a href="http://www.w3.org" title="World Wide Web Consortium">W3C</a>.  Automated accessibility tests including <a href="http://www.contentquality.com/fulloptions.asp" title="Automated validation for Section 508 and WCAG">Section 508 and WCAG</a> are also performed to ensure I didn&#8217;t overlook anything.  There are often other steps involved with the development of an entire website, but perhaps me explaining my methods can offer some insight into my Web design/development process.  Writing this article was inspired by <a href="http://snook.ca/archives/design/how_i_design/" title="Jonathan Snook's design process">Jonathan Snook&#8217;s chronicle of his design process</a>.  I love reading articles like that, and thought I&#8217;d offer a version of my own as well.</p>
<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=62&c=720004879' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=62&c=720004879' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></content:encoded>
			<wfw:commentRss>http://mondaybynoon.com/20070129/my-development-and-design-process/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>&#8226; Abbreviation or Acronym? What&#8217;s the Difference?</title>
		<link>http://mondaybynoon.com/feeder/?FeederAction=clicked&#038;feed=Posts+%28RSS2%29&#038;seed=http%3A%2F%2Fmondaybynoon.com%2F20070108%2Fabbreviation-or-acronym-whats-the-difference%2F&#038;seed_title=%26%238226%3B+Abbreviation+or+Acronym%3F+What%26%238217%3Bs+the+Difference%3F</link>
		<comments>http://mondaybynoon.com/20070108/abbreviation-or-acronym-whats-the-difference/#comments</comments>
		<pubDate>Mon, 08 Jan 2007 13:11:29 +0000</pubDate>
		<dc:creator>Jonathan Christopher</dc:creator>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[Semantics]]></category>
		<category><![CDATA[Standards]]></category>
		<category><![CDATA[abbrr]]></category>
		<category><![CDATA[acronym]]></category>
		<category><![CDATA[tag]]></category>

		<guid isPermaLink="false">http://mondaybynoon.com/2007/01/08/abbreviation-or-acronym-whats-the-difference/</guid>
		<description><![CDATA[One of my favorite things about Web development is it&#8217;s openness. I love it how open the principles, practices, and techniques behind it are continually open for discussion. One of my top priorities when applying markup to a document is keeping semantics in mind. (X)HTML is a semantic markup language by nature, and it should [...]<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=59&c=759772250' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=59&c=759772250' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></description>
			<content:encoded><![CDATA[<p>One of my favorite things about Web development is it&#8217;s openness. I love it how open the principles, practices, and techniques behind it are continually open for discussion.  One of my top priorities when applying markup to a document is keeping <a href="http://en.wikipedia.org/wiki/Semantics">semantics</a> in mind. <abbr title="(eXtensible) HyperText Markup Language">(X)HTML</abbr> is a semantic markup language by nature, and it should be treated as such, but semantics can be argued until the end of time in certain cases.</p>
<p>When first researching the specifications published by the <abbr title="Word Wide Web Consortium">W3C</abbr>, there were certain times where a light went off, and one more piece seemed to fit together.  Many times, it was when I would read about one of the <a href="http://friendlybit.com/html/encyclopedia-of-html-elements" title="Encyclopedia style listing of HTML elements">many HTML elements</a> and it would just <em>make sense</em>.  As I became more and more involved with markup, it became apparent how great <abbr title="(eXtensible) HyperText Markup Language">(X)HTML</abbr> can be when <em>used properly</em>. From time to time I will review the specification, re-examine the details, and analyze how I&#8217;ve been using a particular tag in practice.  Two such tags that I recently reviewed are the <code>acronym</code> and <code>abbr</code> tags.</p>
<h2>Acronym or Abbreviation?</h2>
<p>The <code>acronym</code> and <code>abbr</code> tags are not only a completely great tool for your readers, they also provide another way for you to include some search engine friendly keywords into your document.  According to the <a href="http://www.w3.org/TR/html4/struct/text.html#h-9.2.1" title="Word Wide Web Consortium Specification on Phrase elements">W3C Spec</a>, <code>acronym</code> and <code>abbr</code> are considered phrase elements. <q cite="http://www.w3.org/TR/html4/struct/text.html">Phrase elements add structural information to text fragments</q>.  More specifically:</p>
<blockquote cite="http://www.w3.org/TR/html4/struct/text.html#h-9.2.1">
<dl>
<dt>ABBR</dt>
<dd>Indicates an abbreviated form (e.g., WWW, HTTP, URI, Mass., etc.).</dd>
<dt>ACRONYM</dt>
<dd>Indicates an acronym (e.g., WAC, radar, etc.).</dd>
</dl>
<p>The ABBR and ACRONYM elements allow authors to clearly indicate occurrences of abbreviations and acronyms. Western languages make extensive use of acronyms such as &#8220;GmbH&#8221;, &#8220;NATO&#8221;, and &#8220;F.B.I.&#8221;, as well as abbreviations like &#8220;M.&#8221;, &#8220;Inc.&#8221;, &#8220;et al.&#8221;, &#8220;etc.&#8221; &#8230; Marking up these constructs provides useful information to user agents and tools such as spell checkers, speech synthesizers, translation systems and search-engine indexers.</p>
</blockquote>
<p>The first time I read the above definition, I was still a bit perplexed as to when each should be used.  The specification goes on to say:</p>
<blockquote cite="http://www.w3.org/TR/html4/struct/text.html#h-9.2.1">
<p>The content of the ABBR and ACRONYM elements specifies the abbreviated expression itself, as it would normally appear in running text. The title attribute of these elements may be used to provide the full or expanded form of the expression.</p>
</blockquote>
<p>The definition has now grouped the two tags into one and made it a bit more confusing as to what criteria a string should meet before it is classified as either <code>acronym</code> or <code>abbr</code>.</p>
<p><span id="more-59"></span></p>
<blockquote cite="http://www.w3.org/TR/html4/struct/text.html#h-9.2.1">
<p>Note that abbreviations and acronyms often have idiosyncratic pronunciations. For example, while &#8220;IRS&#8221; and &#8220;BBC&#8221; are typically pronounced letter by letter, &#8220;NATO&#8221; and &#8220;UNESCO&#8221; are pronounced phonetically. Still other abbreviated forms (e.g., &#8220;URI&#8221; and &#8220;SQL&#8221;) are spelled out by some people and pronounced as words by other people. When necessary, authors should use style sheets to specify the pronunciation of an abbreviated form.</p>
</blockquote>
<h3>What separates <code>abbr</code> and <code>acronym</code></h3>
<p>From reading the documentation, we can gather that <code>abbr</code> and <code>acronym</code> are <em>very</em> similar in nature, but on the other hand, they&#8217;re different.  The specification leaves this issue open for interpretation and many people have their own views.</p>
<p>I tend to side with those that decipher the difference in the actual pronunciation of the phrase.  An acronym is a set of letters that can be pronounced as a single word (e.g., NATO pronounced &#8220;NAY-TOE&#8221;) whereas an abbreviation is pronounced one letter at a time (e.g., CSS pronounced &#8220;SEE ESS ESS&#8221;).</p>
<h4>Is there a need for both <code>acronym</code> and <code>abbr</code>?</h4>
<p>There are many people that feel that <code>acronym</code> will be deprecated in future versions of <abbr title="eXtensible HyperText Markup Language">XHTML</abbr>.  Personally, I don&#8217;t have a strong opinion on whether or not we&#8217;ll be able to use <code>acronym</code> in the future, but given the gray nature of the definition itself, I wouldn&#8217;t rule out it&#8217;s deprecation.</p>
<p>Beyond the semantics of the tags themselves, there are, of course, browser inconsistencies to deal with as well.  From a semantic point of view, browser support could be pushed aside in favor of semantic value.  On the other hand, having stylistic control over abbreviated phrases or acronyms can be a strong benefit for the design and usability of a document.</p>
<br /><p><a href='http://rss.buysellads.com/click.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=59&c=67622260' target='_blank' rel='nofollow'>
				<img src='http://rss.buysellads.com/img.php?z=1269068&k=2ee344414ac81fbb0f9de6ab08e9831e&a=59&c=67622260' border='0' alt='' /></a></p><p><a href='http://buysellads.com/buy/sitedetails/pubkey/2ee344414ac81fbb0f9de6ab08e9831e/zone/1269068' target='_blank'>Advertise here with BSA</a></p>]]></content:encoded>
			<wfw:commentRss>http://mondaybynoon.com/20070108/abbreviation-or-acronym-whats-the-difference/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Database Caching 1/120 queries in 0.093 seconds using apc
Object Caching 1842/2033 objects using apc

Served from: www.mondaybynoon.com @ 2012-02-11 09:17:55 -->
