Re: [css-cascade] bikeshedding "default"

I have a bunch of new ideas about `default` alternatives:

1. `defaults` (with `s` at the end) instead of `default`. This may be treated as a plural form or as a Present-Indefinite verb (i.e. what the value _does_).

2. `uncascade` (unlike `cascade-default`, it's single word).

3. Reuse the existing cursor's `default` keyword, but only inside `@supports (all: default)` at-rule:

    cursor: default; /* Current `cursor: default` meaning. */

    @supports (all: default) {
        cursor: default; /* Browser-default value. */

(No, this is not confusing, and web developers are smart-enough people.)

4. Exclude the `cursor` property from browser-defaultable properties. We always can explicitly set just the `cursor` property to any value we need:

    A:link {
        all: default;
        cursor: pointer;

(No, this is not confusing, just a historical tradeoff.)

5. Introduce feature-support flags (like DOCTYPE in HTML, but in CSS and per-feature) -- this is eventually almost inevitable anyway. For example, with the `@features` at-rule (probably placed at the beginning of stylesheet):

    @features {
        /* Lets implementation know that `default` (including `cursor` prop.) means browser-default. */

        /* Some other (not related to default) flags may also be here. */

    .example {
        /* Browser-default value instead of current `cursor: default` meaning. */
        cursor: default;


6. `non-cursor-default` or `default-default` or `implementation-or-user-or-author-default-we-do-not-know-exactly-how-to-name-it-but-now-you-get-the-idea`. :D

7. Drop the planned `default` feature entirely just because there is no an appropriate keyword. :D


Received on Monday, 29 June 2015 22:14:56 UTC