The personal disquiet of

Mark Boulton

November 24th, 2005

Semantic Typography: Bridging the XHTML gap

In the Web Stand­ards com­munity we hear the words ‘Semantic Markup’ thrown around a lot as a concept—the right thing to do— but I know a lot of design­ers who are try­ing to learn this stuff are being con­fused by the whole ‘semantic thing’. 

It’s a dif­fi­cult task for a designer, who primar­ily thinks very visu­ally, to relate to a concept like semantics in a doc­u­ment when all they want to do is cre­ate something. 

After doing a ton of research over the past couple of weeks I’ve begun to notice links and pat­terns between typo­graphic the­ory and Web Standards.

I’m going to keep this quite brief and hope­fully prac­tical from a design and devel­op­ment point of view.

First of all, I’ll explain some of my thinking.

Typo­graphic structure

In most doc­u­ments there is a typo­graphic struc­ture and a hiearchy of ele­ments, from let­ters up to chapters. Here’s a list, which is by no means com­plete, that explains what I’m on about:

You could of course go more gran­u­lar than this, but I think it illus­trates the point.

From this you can see how, by look­ing closely at the con­tent, that the lan­guage can be broken up into chunks, into bits of semantic­ally func­tional ele­ments. So, you could argue that:

  1. Doc­u­ments have a con­cep­tual structure
  2. Graphic struc­tures can be made that reflect con­cep­tual structures

This per­haps the key to suc­cess­ful typo­graphic design. Mak­ing sure the graph­ical rep­res­ent­a­tion of the con­tent matches the men­tal model of the reader, or con­cep­tual struc­ture stip­u­lated by the author (or prefer­ably both).

Bridging the XHTML gap

As I men­tioned earlier, design­ers often struggle (in all the Web Stand­ards malar­key) to make the con­nec­tion between their design, the con­tent and then the code. The code bit seems very abstract ini­tially. Hope­fully this next stage will help explain how the gap can be bridged painlessly.

We have our model for match­ing the semantics, or mean­ing, of our doc­u­ment to the design we create:

  1. Doc­u­ments have a con­cep­tual structure
  2. Graphic struc­tures can be made that reflect con­cep­tual structures

Now, add to that our step for XHTML:

  1. Doc­u­ments have a con­cep­tual structure
  2. Graphic struc­tures can be made that reflect con­cep­tual structures
  3. XHTML struc­tures can be made that reflect con­cep­tual structures

So:

The graphic and XHTML struc­ture of a doc­u­ment should reflect its con­cep­tual structure.

There­fore our fin­ished web page will:

  1. Be presen­ted, typo­graph­ic­ally, to match the document’s con­cep­tual model
  2. The XHTML under­ly­ing the web page will also match the con­cep­tual model
  3. The mean­ing, or semantics, of the web page will match that inten­ded by the ori­ginal document.

For the visu­ally ori­ented amongst us…

I’m going to put this into pic­tures to help explain what I’m on about. If any­thing it might help me firm up this the­ory a bit.

So, let’s put this in the realms of real­ity. Let’s say you have a brief from a cli­ent, who hap­pens to be an estate agent, to build a web site for him. Most of the con­tent for that site will be house details. Cur­rently he pro­duces single sided doc­u­ments with the house specs on and he wants you to build the bulk of the web­site using this information.

So, here’s the house details:

{title}

As you can see, there’s very little visual design been done to this doc­u­ment. The first task then is to estab­lish the document’s con­cep­tual struc­ture, its semantic ele­ments, from there we can identify our typo­graphic structure.

{title}

Once that is done, for­get­ting the design for the moment, we can (again, using the doc­u­ments con­cep­tual struc­ture), label those ele­ments with their cor­res­pond­ing XHTML tags. 

{title}

The doc­u­ment con­cep­tual struc­ture is retained, we now have our XHTML struc­ture (our semantic markup). Focus­sing then on the design we can make the typo­graphic struc­ture match the con­cep­tual struc­ture (still retain­ing our XHTML structure)

{title}

And there we have it. A typo­graphic design, which has been tagged up with semantic XHTML, which retains the author’s con­cep­tual structure.

The bene­fits

The bene­fits of going through the pro­cess in this man­ner is that it’s from a designer’s per­spect­ive, there’s less of a leap con­cep­tu­ally into the land of code where doc­u­ment struc­tures are com­mon place (OOP etc.) I’ve been fol­low­ing this model for a couple of weeks now and it works pretty well. It stream­lines the pro­cess of assign­ing head­ing tags for example which have always been quite arbit­rary in the past. 

For those design­ers who are com­ing from a multi-disciplinary, or print, back­ground and have trouble with this whole ‘semantic markup’ thing, please give this a go and let me know what you think. In fact design­ers who have been doing Web Stand­ards for a while please give this a go and let me know how you get on with it. I’d be inter­ested in know­ing your thoughts.

40 Responses to “Semantic Typography: Bridging the XHTML gap”

  1. Paul D said on: November 24th, 2005 at 3:08 pm

    This art­icle is a very good intro­duc­tion to what web design­ers mean by semantic mark-up.

    In truth, you could prob­ably fill a whole book explor­ing the rela­tion­ships between semantics, typo­graphy, and XHTML, and how good typo­graphy and code achieve bet­ter communication. 

    Also, kudos for using the right-arrow glyph. :)

  2. Danny H said on: November 24th, 2005 at 5:15 pm

    It?s funny because I have been doing this same very thing, but haven’t real­ized it. You artic­u­lated what I have been work­ing out in my head all along since I got into webs standards. 

    Now I can think about it in a more ana­lyt­ical fash­ion, with my new-found awareness. 

    Great article

  3. Marc Jones said on: November 24th, 2005 at 7:11 pm

    My HTML/Web design ‘skills’ are not only self-taught but also until recently old skool until it hurt. Of course I appre­ci­ate the argu­ment for semantic CSS etc but I think what has been dif­fi­cult for me in see­ing the light has been think­ing in the cor­rect man­ner. CSS/XHTML from a learn­ing POV is awash with code-first type of teach­ing — this example is another “moment of clar­ity” for me on my jour­ney to a bet­ter web. 

    Far from code being abstract at the start of the pro­cess I think it can also serve as a men­tal block — ie almost stiff­ling free thought in a design sense. A sort of “but how do I achieve” scenario. 

    The example used above puts the actual semantics into their right­ful place and pave the way for designer-first-code-monkey-second types to “get” the end product (code-wise) enough to design accord­ingly but without feel­ing shackled (in my case at least).

    As it hap­pens I am about to redesign an estate agent’s web­site I built 2 years ago using what is now an over pro­lif­er­a­tion of table-based nastiness. 

    Ain’t it great when things seem to fall into your lap just at the right time!

  4. Galen said on: November 24th, 2005 at 10:51 pm

    Mark, I’m very impressed with the con­tent of your art­icles. It’s nice to find a blog that has good, qual­ity inform­a­tion that keeps things simple. 

    I’ve been mak­ing a con­cer­ted effort to use structural?or semantic?markup but this art­icle has cer­tainly made the concept more straight­for­ward and understandable.

  5. Keane said on: November 25th, 2005 at 1:46 am

    Where I struggle with semantic markup is with the grey areas. Per­haps it doesn’t really mat­ter, but, for example, in your example, why is the list a list and the table a table? As far as I can tell, the list _should_ be a table (I cer­tainly don’t think it’s a defin­i­tion list), but because the ori­ginal author has made it a list, you’ve made it a list. Per­haps I’m stray­ing off course into con­tent edit­ing here, but in the con­text of semantics … 

    Um, any­way, and stay­ing firmly on the pedant’s ped­es­tal, what’s the semantic and/or typo­graphic point of the NEW! star? It’s not in the ori­ginal article … 

    p.s. I should say, hav­ing opened up with a vol­ley of cri­ti­cism for my first com­ment on your site, I do love your writing—your five simple steps to bet­ter typo­graphy art­icles hooked me (and the com­ments dir­ectly led me to pur­chase Bring­hurst), though I’m yet uncon­vinced by the ‘hang your punc­tu­ation in the gut­ter’ the­ory. That said, since read­ing that par­tic­u­lar art­icle, I do make a con­scious decision to push my bul­lets and num­bers as far left as my stom­ach can handle. So you never know—before long, I might well be dangling them out there too.

  6. Heiko said on: November 25th, 2005 at 9:47 am

    A very good little tutorial for semantic XHTML struc­ture. I will choose it as my article/site of the week at my blog. Thx

  7. Wible said on: November 25th, 2005 at 3:03 pm

    Well thank you — that was very clearn and it demys­ti­fied some­thing for me. I’ve been try­ing to make my (cur­rent) code clean and arranged neatly but you put a whole now spin on things for me here. Thanks… and now I ‘get’ the whole semantic thing — I hope!

  8. LintHuman said on: November 25th, 2005 at 3:38 pm

    An excel­lent and succint sum­mary of a struc­tural approach that puts con­tent at the heart of the matter. 

    So many cli­ents want us to pro­duce visu­als without provid­ing the con­tent, think­ing that it can poured in to a design once it’s in place. Try­ing to explain to cli­ents that you need the con­tent before you start design­ing too often pro­vokes looks of confusion. 

    Your example clev­erly shows that we’re work­ing in the dark without it. Great stuff.

  9. Chris said on: November 25th, 2005 at 3:40 pm

    From a ‘web developer’ POV — This ‘con­cep­tual struc­ture’ is also known as an XML doc­u­ment. The above example could look like this:

    <Prop­erty>

       <Name>19 Meadow View</Name>

       <Over­view>

          <Price>300000</Price>

          <Bedrooms>4</Bedrooms>

       </Overview>

       <Image>123432.jpg</Image>

       <Description>Individual fam­ily house…</Description>

       <Dimen­sions>

          <Room name=“Hallway” width=“3.5″ length=“6.1″/>

          <Room name=“WC / Cloak” width=“2” length=“3”/>

       </Dimensions>

    </Property>

    This XML doc­u­mentis purely about data and has noth­ing to do with present­a­tion or HTML for that mat­ter.  But even at this level we can begin to get ideas about how this data would be best dis­played. E.g. what should be a table, what should be a block of text etc. 

    Also this ‘con­cep­tual struc­ture’ or xml doc­u­mentis a great way of com­mu­nic­at­ing with your respect­ive programmers. 

    Great art­icle (yet again) Mark and backs up your case for inform­a­tion driven design.

  10. Jason said on: November 25th, 2005 at 9:10 pm

    Thanks for post­ing this.  It will def­in­itely come in handy.

  11. Rick H said on: November 26th, 2005 at 2:25 am

    Adding to LintHuman’s com­ment: Your example, while very well explained, brings up a prob­lem when writ­ing (and design­ing for) semantic con­tent. Given that the main head­ing (from a typo­graphic or a con­cep­tual point of view) is more or less sup­posed to be descript­ive of the page con­tent, exactly what is “19 Meadow view”? A street address? Maybe an address in a well-known devel­op­ment that I should be famil­iar with? Why is it import­ant? My opin­ion is that a new h1 should be writ­ten that is more descript­ive and the cur­rent h1 demoted to at h2 or h3 at best. It’s still neces­sary to have good, well-written content.

  12. Mark Boulton said on: November 26th, 2005 at 11:43 am

    Chris — A really good point. I hadn’t thought about the xml struc­ture as well. 

    Rick H — I take it you’ve never had to go through six months of try­ing to find a house ;). The address of the prop­erty is the most import­ant head­ing on a page like this, without doubt. What would you sug­gest instead? What could pos­sibly be more descript­ive about a property’s loc­a­tion, or unique iden­ti­fier, than it’s street address? 

    Although your com­ment is a good point, it does high­light where people can get con­fused with this.

  13. patrick h. lauke said on: November 26th, 2005 at 2:12 pm

    <blockquote><p>What could pos­sibly be more descript­ive about a property?s loc­a­tion, or unique iden­ti­fier, than it?s street address?</p></blockquote>

    mark, it’s not about a unique iden­ti­fier for the prop­erty, but about an unequi­vocal title for the page itself. ima­gine you come to the page from a search and won­der “what’s this page about?”. you look at the H1 and all you get is “19 Meadow view”. fair enough, you could cor­rel­ate, based on the page’s TITLE, that it’s details for a property…but far more expli­cit would be some­thing like “Prop­erty for sale — details” (being a bit wordy here to make the point) as an H1, and the address as an H2.

    of course, just look­ing at this frag­ment in isol­a­tion is not very indicative…it may well be that the over­all struc­ture of the site/page around it may give more details and context.

  14. Mark Boulton said on: November 26th, 2005 at 3:14 pm

    Patrick — I take your point, well put. Like you say though, we really do get into the semantics and usage of par­tic­u­lar tags for par­tic­u­lar things, like the page TITLE. 

    Should the H1 be the page title? Or should it be the TITLE (as inten­ded by the HTML spec I’m guess­ing? If it’s the former, are we design­ing to the way search engine’s work rather than being true to the doc­u­ments con­cep­tual model. A page’s title is dealt with (or rather should be) by the page’s TITLE. 

    Like you say, the con­text is very import­ant. In the con­text of a sec­tion on houses for sale in an estate agent’s web­site, this con­tent would make sense. Take it out of con­text and things start to change.

  15. Yannick said on: November 26th, 2005 at 3:34 pm

    Very nice art­icle Mark. Will def­in­itely give it a go in my next project.

  16. Ara Pehlivanian said on: November 26th, 2005 at 5:02 pm

    Great art­icle. I’ve got­ten so used to think­ing semantic­ally that it’s hard to approach a doc­u­mentother­wise. You’ve really done a good job of cov­er­ing the designer’s perspective.

  17. Erwin Heiser said on: November 26th, 2005 at 5:43 pm

    Nice art­icle, mark, it reminds of so many cli­ents who con­tact you and go “I need a web­site”, more often then not they are clue­less as to what they are going to put on that web­site.  As ever (well-structured) con­tent is king.

  18. Jon said on: November 26th, 2005 at 10:34 pm

    Good stuff Mark. My HTML code mon­key made me read this and threatened to for­ward all hyper­links to naughty sites if I didn’t. 

    I’m the visual guy—the design mon­key, so I can respect where you’re com­ing from. 

    How­ever, like the ana­logy given, there are mul­tiple ways to ‘cor­rectly’ format a para­graph or a line of thought. Or, for that mat­ter, a design. 

    Sim­il­arly, there appears to be mul­tiple ways to ‘effect­ively’ pro­duce a line of code that works. 

    Now, I’m all for the most effi­cient meth­ods, but there’s a line between “effi­cient” and down­right anal in my opinion. 

    I have a copy guy who is anal about his copy and the HTML guy can’t under­stand why.

    Same thing guys…we’re all try­ing to pro­duce the most ‘effect­ive’ (rules not­with­stand­ing) page. Some­times that may call for ‘poor’ mark-up, such as under­lined text, to make the func­tion of the page (a sales page, for example) work bet­ter. That’s the debate right now, so I figured I’d toss it out. 

    Per­son­ally, I dis­like under­lined text ‘most’ of the time when it’s not a link. How­ever, it’s a clever trick for mar­keters to use, and if “effi­ciency” is really the goal here (and it should be) then mark-up needs to take a back seat.

    On the other hand, a gob of hor­rid code to cre­ate a cer­tain look—well, I can under­stand why that is the work of the devil. 

    Thanks for the insights…Jon

  19. mattymcg said on: November 26th, 2005 at 11:16 pm

    Great art­icle Mark. Like Keane and oth­ers though, I think that clearly delin­eat­ing what is con­cep­tu­ally “more import­ant” is a big grey area that is poorly defined by the W3C and con­sequently inter­preted dif­fer­ently by dif­fer­ent design­ers. For example, where would a page’s global or local nav­ig­a­tion fall into this hier­archy? Do they also need head­ings? Are they more or less import­ant than the exist­ing ones? What about vis­it­ors using screen read­ers, do we need to give nav­ig­a­tion a title for them because they lack visual con­text, but hide it for every­one else? These types of issues make what should prob­ably be a well-defined pro­cess more like a can of worms. 

    Any­way thanks for mak­ing a small chunk of it clear, it’s a good place to start.

  20. Ray said on: November 27th, 2005 at 1:05 am

    I’m Jon’s HTML guy. 

    I under­stand why the cli­ent (sales guy) is anal about his sales let­ter. He’s mak­ing money. 

    Thanks for illus­trat­ing the typ­ical void between mar­ket­ing and markup though Jon. Markup should *never* take a back­seat to effect­ive­ness of a sales page. In fact, a poorly marked up doc­u­men­thurts a sales page’s effect­ive­ness. Why? Because a doc­u­ment­that is not semantic­ally rich will not return any sense of rel­ev­ance to a search spider. And in search vis­ib­il­ity, rel­ev­ance is the name of the game. Markup is life. 

    Under­lined text isn’t the issue here. That’s an abom­in­a­tion unto itself. ;)

    Mark, nice art­icle. It cap­tures the pro­cess of turn­ing the visual guy’s work into a Web doc­u­mentrather neatly.

  21. Jon said on: November 27th, 2005 at 1:18 am

    I’m Ray’s HTML curse. 

    Markup should indeed take a back­seat to effect­ive­nesss. There’s the assump­tion that a page will not be ‘spidered’ if markup isn’t just “so”.

    “Poor markup” could be described as “under­lined non-linked text”, but this will in no way affect search­ab­il­ity of a site. 

    There are other examples, but I agree with the over­all concept of this blog:  clean markup and clean design should meet and marry. How­ever, one should stop try­ing to kill the other—and effect­ive­ness is still the rul­ing factor. If some­thing works well, then it works well. If it can work ‘bet­ter’, then by all means let’s make it work better. 

    How­ever, as a designer, I relate to the idea of “per­fec­tion­ism” to a degree, and code gurus can often get so caught up in that pur­suit that they lose site of the pur­pose of a page to ‘begin’ with. 

    Design­ers do the same thing. 

    So, while I’m not one to ever do crap design, I’m also not going to cre­ate Picasso for a tri-fold bro­chure. I will put my ener­gies into the things that really matter—helping my cli­ent make money from the brochure.

    Some of the worst bro­chures I ever came across from a mar­ket­ing stand­point were works of art. The artist can visu­ally pleas­ure him/herself all day long, but the cli­ent and the com­pany is the one who pays—literally and figuratively. 

    Any­way, Ray and I actu­ally see pretty eye-to-eye on this stuff. He’s just a Canook and likes to argue. I dig ‘em anyway.

  22. Ray said on: November 27th, 2005 at 1:23 am

    Note to self: never send a cli­ent to a developer’s blog. 

    Sigh.

  23. nortypig said on: November 27th, 2005 at 1:59 am

    This is one of the best ways of actu­ally explain­ing to people what semantics is. Often the word just glazes over someone’s mind but I will send them over to read this in future. The first part might still be kind of dif­fi­cult to grasp for someone never hear­ing of semantics before, but the explan­a­tions after that did make it clear as shiny chips and tomato sauce. 

    Out­stand­ing art­icle. Hey I love your com­ments, if only I were half as tal­en­ted… awesome.

  24. Wim Leers said on: November 27th, 2005 at 2:07 am

    Great art­icle. Involves enough details, but stays simple — thanks to your well-chosen example. 

    There are so many sucky web­sites out there, in the wild. And I’m not talk­ing about Mr. Failure’s blog — there are plenty of ‘big’, highly rated vis­it­ors with a bad site structure.

  25. inoodle said on: November 27th, 2005 at 6:54 pm

    Nice art­icle, I’m sure I com­men­ted on it on fri­day, but it seems to have dis­ap­peared! Any­way, I was won­der­ing if you had any rules to decide when to use a list, and when a table, as semantic­ally, they seem to be pretty inter­change­able, at least in the example above.

  26. Wim Leers said on: November 27th, 2005 at 8:09 pm

    inoodle — In gen­eral it’s this rule: tables should be used when you want to present data with two dimen­sions, while lists should be used for single dimen­sional data.

  27. inoodle said on: November 28th, 2005 at 2:05 pm

    Wim, in the example above, both the list and the table really have the same dimen­sions. Its unfor­tu­nate but the choice often seems dic­tated by the visual require­ments of the designer as opposed to the semantics of the information.

  28. Jordi Pujalte said on: November 28th, 2005 at 5:15 pm

    I think I see the cri­teria for select­ing of a table vs. a list. 

    List:

    >x-type thing: x-type thing details

    >y-type thing: y-type thing details 

    Table:

    >x-type thing: x-type thing details

    >x-type thing: x-type thing details 

    So, the list lists a list of dif­fer­ent, though related, items. A “prize” is not a “num­ber of rooms”, and they are not the same thing as a “gar­age type”, but they are prop­er­ties of the house.

    The table of rooms, how­ever, is list­ing a bunch of objects of type “room”, with each column describ­ing a prop­erty of the given “room”, hence the 2-dimensionality. 

    In short, a list shows ele­ments that are some­what related to each other, whereas a table lists ele­ments of the same type.

  29. inoodle said on: November 28th, 2005 at 5:32 pm

    jordi:

    Yes I see what you mean, and I’ll try and apply that. How­ever when look­ing at the example, it almost makes me ques­tion if the price should actu­ally be part of that same group of inform­a­tion. The other 3 items of inform­a­tion relate to room details, and the price could be said to be a quite sep­ar­ate piece of inform­a­tion.

    I sup­pose the items in the list are all likely to be stored as search­able items in the database.

  30. Wim Leers said on: November 28th, 2005 at 7:05 pm

    Or maybe… we’re just being over-strict on apply­ing the cor­rect semantic strategies. There is a point where inform­a­tion can be under­stand­able and well-ordered in both a list AND a table. Shouldn’t it all be about mak­ing the data presen­ted under­stand­able instead of tak­ing note of the slight­est nuance in semantic difference?

  31. WebtrafficJunkie said on: November 30th, 2005 at 1:49 am

    Thanks for the inform­a­tion.  It will def­in­itely be helpful!!

  32. Butter said on: December 1st, 2005 at 11:58 pm

    Great art­icle.  Kind of reminds me the Inform­a­tion Archi­tec­ture book i am reading.

  33. Edd said on: December 2nd, 2005 at 1:01 am

    Ignor­ing the dl/table debate for now.…Mark said… 

    <blockquote]>The code bit seems very abstract initially.</blockquote>

    Semantic code is under­stood much bet­ter (by it’s very nature) than non-semantic code… I could teach my Mum (and Nan.…maybe!?) how to mark up head­ings, para­graphs, lists, etc, and she will have a clearer under­stand­ing of why than any­one ever did using non-semantic, table-ridden, bas­tard­ised yester-year code. She knows what a para­graph is…she was taught it at school. 

    By-passing the “visual” designer that the art­icle addresses for a moment, if you take the design pro­cess back to the copy­writer (whom ever that may be) it is likely that they will have envi­sioned the “cre­at­ive” in much the same way as we, the web design­ers, would have marked it up…“headline goes here…copy goes here, list of stuff, etc” 

    The “visual” designer will take this copy and turn it into a “design”… they should there­fore have an under­stand­ing of the mean­ing of the copy…Whether they can express it as such or not. 

    You can wring your hands all day about lists/tables/hX orders but the basics of semantics is not a web design issue, its about under­tand­ing doc­u­ment­struc­ture. The tags are there to help! Ask my Mum, if you don’t believe me!

  34. Steven said on: December 7th, 2005 at 4:40 am

    You put the price and num­ber of rooms in a defin­i­tion list but what is the defin­i­tion term? 

    Price?

    Surely it should read - 

    <dl>

    <dt>Features</dt>

    <dd>Price..</dd>

    </dl> 

    Or even just using an unordered list and hav­ing an h2 called features. 

    I would also sug­gest the street address is made into an h2 and the h1 be some­thing like - 

    Houses — County — Town 

    Then if a search was made then you know that you are look­ing at a page about houses in that town and county with the sub­head­ing show­ing the street in that town and county. 

    Just my two pen­nies worth! 

    Any­way the art­icle is excel­lent and will help me further!

  35. Siegfried said on: December 7th, 2005 at 4:25 pm

    Hi,

    great art­icle, indeed. Although i think it still gets too short. But the example is indeed really excel­lent. Start­ing by visually/grafically group­ing the vari­ous parts is a very good start. 

    But then call­ing some parts simply “list” or “table” is not the way to go. Bet­ter is the ver­sion pos­ted here using some kind of xml form­al­ism. It makes a dif­fer­ence if you call the second block in this examle a “list” or a “prop­erty”. Call­ing an image an image (or depic­tion or what­so­ever) is o.k., but the fol­low­ing is not a para­graph (what is a “para­graph” in con­tent semantics?), it is a descrip­tion. You where right when you stated that we should think of the “mean­ing” of a web page part. But then, what is the “mean­ing” of “table”? I could ima­gine of many “tables” con­tain­ing thou­sands of dif­fer­ent con­tents. But for this example i could only think of exactly one “Room Plan”. So this is not a table, this is a room plan. The table is only a (good) tool to organ­ize, what the room plan really is.

    If you then want to trans­late your semantic markup into (x)html, then you should use (x)html-Tags like li or table, but then still the class or id attrib­ute should reflect your semantic markup. 

    Sorry for any broken eng­lish, maybe for say­ing that my eng­lish is not quite good enough. 

    Regards, and thanks for this art­icle,

    Siegfried

  36. Steven said on: December 8th, 2005 at 2:18 am

    You put the price and num­ber of rooms in a defin­i­tion list but what is the defin­i­tion term? 

    Price?

    Surely it should read - 

    dl

    dt Fea­tures /dt

    dd Price.. /dd 

    Or even just using an unordered list and hav­ing an h2 called features. 

    I would also sug­gest the street address is made into an h2 and the h1 be some­thing like - 

    Houses — County — Town 

    Then if a search was made then you know that you are look­ing at a page about houses in that town and county with the sub­head­ing show­ing the street in that town and county. 

    Just my two pen­nies worth! 

    Any­way the art­icle is excel­lent and will help me further! 

    Pos­ted again because dum­barse here put in the ele­ment brack­ets the first time, hence the silly look­ing post above…

  37. Shani said on: December 10th, 2005 at 5:43 pm

    Great art­icle, but where can i learn to lay­out the page like that with css? 

    i usu­ally use tables to do things like those.

    Thanks ahead, Shani elharrar(male).

  38. Graham Sanders said on: December 11th, 2005 at 7:21 pm

    Hi Mark,

    As expec­ted yet another good art­icle. Just won­der­ing if you received the card I sent and if you were to do another art­icle on Chrits­mas cards as you did last year as I realy liked it?

  39. Mal said on: December 22nd, 2005 at 1:19 am

    Hi, Just wanted to let you know that this page looks broken in IE6/XP after the entry by ‘Steven

    Wed 7th Dec 2005 4:40 am’. Font is really big from there onwards and all on top of each other (I guess line-height is small).

  40. Kuswanto said on: December 22nd, 2005 at 8:39 am

    Very nice art­icle. A lot easier to under­stand with the images.

  • Me

    Hello. My name is Mark Boulton. I’m a designer, an author, a speaker and I run a small design agency where we work with lovely cli­ents and pub­lish books as we go. This is my blog.

  • More of me

  • Publications

    Design­ing for the Web
    Start­ing from £19 + VAT for a PDF Down­load. £29 for a full col­our paperback.
  • Where I work

    Mark Boulton Design
    A small design stu­dio doing good things for nice clients.
    Five Simple Steps
    Pub­lish­ing easy to read design books.
  • See me speak

    @Media 2010
    June 8th — 11th, London.
    Web­d­a­gene
    Septem­ber 29th — Octo­ber 1st, Oslo.
  • Copyright © 1999–2009 Mark Boulton. Made with an Apple Mac in Wales. Powered by WordPress and hosted by Media Temple.