Stephen Stagg wrote:
How could you know what style to apply to meaningless content?
That's what the style-sheet is for. We are relying more and more on the
display: element of CSS, why not define a well-thought out and
extensible set of display types to replace the default behavior of many
current tags. Want to include flash on your site? define a CSS rule:
You seem to want to move the semantics from the markup layer to the
presentation layer. Do I really need to explain why that is not a good
idea?
flashmovie{ display:flash;}
and then your document reads:
<flashmovie src="file://a.c.v/me.swf" />
This shows that you have very little understanding of how the display
property works; and probably little understanding of CSS in general.
That's already possible with existing css:
flashmovie { content: attr(src); }
In fact, it's already possible with existing markup: <object>. Why do
you insist on reinventing the wheel? Are you aware of the reason why
<applet> was deprectaed? Obviously not, because you want to introduce a
<flashmovie> element.
Hell, even I know what that means :))
You may think you know what it means based on the tag-name, but without
any formally defined meaning that can be understood by a UA,
<flashmovie> is as meaningless as <foobar>.
Effective styling depends on document semantics
Wrong, I see the point you are trying to make,
No, you clearly do not.
but Styling is totally autonomous, It takes pre-defined rules and
applies them to a list of tags, the CSS processor in modern browsers
shouldn't care WHAT the semantic content of its tags are.
If there are no semantics, that removes all ability of the UA to do
anything useful with the content of the element, beyond rendering it to
the screen. Without the semantics of being a heading, how could a UA
build a TOC or (like Opera) provide easy keyboard shortcuts/voice
commands to navigate from heading to heading. Or what about hyperlinks?
Or any other semantic element in HTML. Without semantics, how could
Google effectively index your page? How could it determine what the
<title> of the document is for displaying in search results?
There are many things that can be done with semantics beyond simple
rendering with CSS.
<div class="h">Foo Bar</div>
.h { font-size: large; font-weight: bold; }
Would you agree that that is a bad idea?
No (except the h doesn't provide any clue to the content) , but it seems
silly to use a DIV element, which REDUCES semantics, having no meaning
to anyone. Rather use, similar to that which you suggest:
<mydocument>
<paragraph>
<heading>This Heading Belongs to this Para</heading>
<content>blah, blah, ....</content>
</paragraph>
</mydocument>
Your custom <heading> element and <div class="h"> have identical
meaning: none at all.
This is not meaningless
In that case, neither is this:
<a>
<b>
<c>This Heading Belongs to this Para</c>
<d>blah, blah, ....</d>
</b>
</a>
If you disagree, what could a UA do with your markup that it couldn't
also do with mine? In fact, both are completely meaningless because
both are undefined.
--
Lachlan Hunt
http://lachy.id.au/
******************************************************
The discussion list for http://webstandardsgroup.org/
See http://webstandardsgroup.org/mail/guidelines.cfm
for some hints on posting to the list & getting help
******************************************************