Anne van Kesteren <mail@annevankesteren.nl> wrote:
[color=blue][color=green]
>> Just kidding. I think I've found my solution. Basically the whole
>> dialog quotes Shakespeare anyway, so it goes:[/color][/color]
- -[color=blue]
> I'm note sure if the speaker him/her-self can be within the
> <blockquote> tag for correct semantics.[/color]
Of course it can - well, not the tag, but the _element_. What is quoted
here is a text by Shakespeare, so <blockquote> is OK for the entire
passage. The words of the characters could be regarded as quotations of
their (fictitional) utterance, so one _could_ use inner <blockquote>
elements as well, and _then_ the question raises whether the name of
the character (a citation) should be outside the blockquote or before
it. Well, that's an open question, and using CSS you could deal with
either solution. If you put the speaker's name before the blockquote,
you could float: left the element in which the name resides.
[color=blue][color=green]
>> Only thing left to mull over is whether
>> <dl><dt>speaker</dt><dd>dialogue</dd></dl> is better than
>> <p><span>speaker</span>dialogue</p> for the dialogue itself.[/color]
>
> The W3C says this is correct.[/color]
The HTML specification by the W3C is self-contradictory, so you can
hardly use it as an effective argument in a case where the topic is
that very contradiction. You can just choose whether you use semantic
(logical) markup, in which <dl> is a definition list, as _defined_ in
the specification, or use tag soup, in which you can use any tag for
anything as long as it gives you the visual impression you like, on the
browser(s) of your current choice, as suggested in the _descriptive_
vague prose of the specification. In the latter case, you can even use
<dl><dd>text</dd></dl> to mean 'indent' (which is just as illogical as
reading <blockquote> as 'indent', of course).
But as regards to CSS, <dl> mostly gives you headache. It's poorly
documented what browsers actually do with it by default, i.e. what the
imaginary browser style sheet might contain, so you can't really know
even the starting point of styling. Besides, implementations often
behave oddly when you try to style <dl> elements. It's generally best
to use _simple_ markup (such as just <p>) when in doubt, if only for
the reason that browsers probably handle things better when you apply
CSS to simple markup.
--
Yucca,
http://www.cs.tut.fi/~jkorpela/