


From: Aryeh Gregor <Simetrical+w3c@gmail.com>
Date: Fri, 25 Mar 2011 17:00:30 -0400
Message-ID: <AANLkTik7OUQrF5AdKkgFx2RZGaERPj5QShiZ6j92f3Pw@mail.gmail.com>
To: www-style@w3.org
CSS 2.1 defines a single text-decoration property, which can be used
to set underline, line-through, overline, and blink.  A consequence of
the way it's defined is that you can't set one of these without
resetting the others.  If I wanted a rule like

.important {
    font-weight: bold;
    color: red;
    text-decoration: blink;

then <u class="important"> would no longer be underlined.

In practice this isn't a huge issue, because no one honestly uses any
of these much other than underline.  However, since CSS 3 Text is
making text-decoration a shorthand property anyway, it should take the
opportunity to let authors set the various types of decoration
separately.  border is a good model for this -- it's really a
in the case that you want them all the same, and each of those is a
shorthand for border-*-width, border-*-color, and border-*-style.

So instead of having text-decoration be a shorthand for
allow specifying different styles and colors for different decorations
on the same element.

without having to worry about unsetting other properties while I do
fake CSS properties and defining execCommand()-specific algorithms to
get and set them in terms of text-decoration.

(By the way, I notice text-decoration-line now includes cancel-
values, which were added in 1.168:
Received on Friday, 25 March 2011 21:01:23 GMT
