Re: Supporting propriety "Extensions"

Anne van Kesteren wrote:

>Andrew Fedoniouk wrote:
>> First: Minus in identifiers creates troubles in the *present*.
>> It prevents to introduce formulas naturally.
>
>So use an underscore, as in my first suggestion. Ian also hinted at 
>underscores talking about a _moz_ch unit.

This makes it at least four people on this list who acknowledge that
allowing a hyphen to start identifiers is a bad idea. Then why do we feel
pressed to post-legalize the -foo- vendor extension mechanism?

1. Vendors who first created -foo- properties knew that these are not
valid CSS when they did, because conforming CSS parsers would choke on
them. It didn't bother them to do it at that time, so why should they now
care whether the WG endorses this method or not?

2. Nevertheless, those vendors managed to use them without having the CSS
spec being changed. I see no reason to change something that already works.

3. The CSS WG proposes two equally valid mechanisms to designate vendor
extensions, namely "_foo-" and "-foo-", the latter of which may pose
significant problems for parsing and extending CSS in the future. Why
offering a second mechanism at all? 

Note that vendor extensions prefixed with "-foo-" can continue to being
used by simply serializing them correctly as "\-foo-". This still will
guarantee that they'll not be taken by the CSS-WG anytime in the future.
This is even a transparent change for existing UAs, because it remains
true that 

  css-unescape("-moz-prop") == css-unescape("\-moz-prop").

I don't see any reason why identifiers in CSS' Core grammar need to be
able to start with a hyphen, and so far I haven't found one on this list.
It might well be I'm overlooking something important, so I'd really like
to know the rationale behind this decision of the WG.

Regards, Christian.

Received on Wednesday, 23 February 2005 10:22:58 UTC