On 07/02/07, Barney Carroll <[EMAIL PROTECTED]> wrote:
@liorean:
We're getting somewhere! You suggest that separators are an aberration,
something inherently ambiguous (and this ambiguity is not desired) and
we should use this opportunity to get rid of it.

Not quite. I'm suggesting they're redundant in some (most?) but not
all cases. For example, separator elements used in navigation lists
could easily make up for a separator semantics for what is effectively
arbitrarily deep relations, something hard to convey without separate
a element. Or they could be used to signify a break among siblings as
being more significant than other breaks, even though that is a prime
example of where wrappers are more appropriate-

The problem, again (if I may be so bold), is that you don't actually
believe the horizontal rule was ever useful. Instead, like many people
arguing against it, you suggest that all instances of its use are in
fact better replaced with alternatives.

All instances I can think of in typographical settings, yes. There's
other places it might even be  the most appropriate element. A border
(or :before/:after content set to "* * *" or whatever) doesn't convey
semantics, so in a setting where siblings may be of various relation
to each others, they can be appropriate, too.

In your example you suggest that these separators denote depth, coming
at the end of nested containers - Rob used them as objects appearing
above headings (and yet they were properties of whichever element
preceded the headings): You're giving us crisps when we want chocolate,
and adding chocolate flavouring to the crisps isn't going to make anyone
happy!

The separator is an element that fills in for the start, or end, of a
particularly important distinction in grouping. This grouping is
generally more fit to be outright than leaving the separator as a
distinct element but leaving the grouping structurally missing.

If I'm to play this game (may as well), I would suggest this:

<div class="grouping">
  <p></p>
  <p></p>
  <p></p>
</div>
<div class="grouping">
  <p></p>
</div>

.grouping + .grouping:before{content: "[separator]"}

This is better than Rob's and your examples because it doesn't assume
the separator is incidental to the presence of other objects, which
cause some kind of separation anyway.

In fact, that is exactly the use I think my example was indicating was
a better idea - semantically. It's a bit more code, true. It's a bit
more hassle, true. It's a lot more descriptive semantically.

I think the 'grouping' element is still unnecessary - it creates a
superfluous element. With this method, the author would have to be in a
'grouping' at all times, and would create a separation by closing it and
starting a new one - but the author shouldn't have to create the
grouping in the first place, to account for the fact that they may at
some point desire a separator.

You needn't necessarily wrap both groupings, if either of them was
weak and the other strong. Also, the separation is at boundaries.
Whether it's :after of :before matters not.

I use this example to prove to points:

1) Semantically, the separator object does not rely on the attributes or
pre-defined relationships of other elements. Therefore it needs its own
specific indicating element.

Well, again, it's fuzzy without the wrappers. You don't know what's
being separated from what, at which hierarchical level. Wrappers only
need to be present when there's some strong distinction, and if there
wasn't a strong distinction, why were you using the separator in the
first place?

2) The simplest, cleanest and most logical way to implement this element
is to have a literal separator tag.

In some cases, yes. I think they're a minority however, because the
main use is typographical.
--
David "liorean" Andersson


*******************************************************************
List Guidelines: http://webstandardsgroup.org/mail/guidelines.cfm
Unsubscribe: http://webstandardsgroup.org/join/unsubscribe.cfm
Help: [EMAIL PROTECTED]
*******************************************************************

Reply via email to