Tab Atkins Jr. wrote:

This is definitely and distinctly a CSS issue, not a HTML one. The fact that the contents of an element flow into another box elsewhere in the page has nothing to do with the underlying structure of the data - it's still a single cohesive element, and thus in html it would be marked up exactly as normal. You just happen to be displaying it differently.

The accuracy of your statement depends largely on whether the specification allows the content source to be defined across all joined blocks or only in the first. For example:

<div id="col1"><p>first para</p><p>second para</p></div>
... other unrelated markup ...
<div join="col1"><p>third para</p></div>

This markup would be common when the author is trying to support legacy or non-CSS browsers. The join attribute allows supporting agents to know that conceptually the third para follows on from the second. This might be useful for text or audio browsers to correctly concatenate related sections of text and for search engines trying to demarcate meaningful areas of the page. I strongly recommend that HTML5 define the join attribute and then allow the CSS group to define its behaviour in relation to visual styles. The 'class' attribute sets a precedent for this as it is defined in HTML despite generally having no implications beyond being a style hook. CSS cannot currently target elements except by their structural alignment to others and in many cases the blocks to be joined won't have a simple relationship. Targetting the id of joined elements with the 'join' attribute is still required regardless of how the CSS rules are implemented and this is the correct forum for new HTML attributes.


I've got some ideas in this regard, but we should move it to the CSS list, [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>.

Already done. The topic is currently waiting on moderation.


Shannon

Reply via email to