Re: XHTML

On Wed, 24 Nov 1999 14:23:04 -0800, Murray Altheim
(altheim@eng.sun.com) wrote:
> 
> "L. David Baron" wrote:
> > 
> > On Wed, 24 Nov 1999 13:20:51 -0800, Murray Altheim
> > (altheim@eng.sun.com) wrote:
> > >
> > > The fact that it "works" (using your earlier idea of CSS1 being "fully
> > > implemented") in IE doesn't mean that in an arbitrary XML document (ie.,
> > > not HTML or XHTML) you can rely on it to work correctly (interpreting
> > > the XML DOM correctly) in other applications. Microsoft may have an XML
> > > support for CSS (like simply allowing any element type rather than
> > > HTML's) that suits your needs, but that hardly means that CSS is not
> > > proprietary to HTML. As the principle editor of the CSS1 Recommendation
> > 
> > You said it can't be relied on to work correctly.  But *why* do you
> > think it won't work correctly?  What's the problem?
> 
> Go look at the HTML and XML DOMs. They are different. You can't design

Sure they're different.  But they're both based on the same core.

> a language that works the same, interoperably, in both DOMs. They will

Why not?  What differences cause problems?  The lack of the DOM1 Core's
extended interfaces in SGML-based HTML or the lack of the HTML DOM
extensions in XML?

Sure, an application that applied CSS to both XML and HTML might have
to have separate implementations of some mechanisms because of
differences in the DOMs, but that doesn't prevent CSS from working
correctly with XML.  (For example, there would need to be different
codepaths for matching of type and attribute selectors because of
case sensitivity, since the case sensitivity of these selectors in
CSS is determined by the case sensitivity of the language to which
the stylesheets are applied.)

> For a simple example, HTML uses 'class' attributes, so CSS is designed
> to key off of class attribute values. These attributes have no special 
> significance in XML, and in fact an XML language designer might decide
> to name an attribute 'class' and use it in an alternative way. They
> might want to key off of an entirely different attribute value. There's
> no way to do that in CSS. And what about the difference between "Class",
> "class" and "CLASS" in XML? Case matters, but not in HTML/CSS. I really

This is irrelevant.  In CSS2, the ".x" notation for class selectors:

 * applies to HTML only
 * is syntactic sugar for a more general notation: [class~=x]

> could go on for about ten minutes on this, but perhaps you already see
> my point: CSS was designed for HTML, not generic XML markup. CSS2 is an
> attempt to alter CSS so that it might be suitable for XML. Since I've 

Exactly.  And that alteration is sufficient for many purposes.  (I
say many since there are always new features that could be added.)

> yet to hear of a working implementation (or plans to implement it widely)
> of CSS2 in commercial browsers since even CSS1 has a ways to go [2], I'm

Mozilla has implemented large parts of CSS2 already, although they
have not made any committment to it for the first release.

> [2] WebReview, which reports that #ID is broken in *all* implementations,
>     whitespace, box and border properties in most. The level of unsupported
>     CSS listed in this review is quite enlightening and completely belies
>     statements that full CSS1 support is widespread.
>     http://webreview.com/pub/guides/style/style.html

Neither of the implementations Haakon Lie mentioned (Opera 4 and
Netscape 5) are yet released.

-David

L. David Baron    Sophomore, Harvard (Physics)    dbaron@fas.harvard.edu
Links, SatPix, CSS, etc.     <URL: http://www.fas.harvard.edu/~dbaron/ >
WSP CSS AC                      <URL: http://www.webstandards.org/css/ >

Received on Thursday, 25 November 1999 09:39:53 UTC