WebKit supports the old "text-decoration" property from CSS2 (https://www.w3.org/TR/CSS2/text.html#propdef-text-decoration), which is somehow similar to the new "text-decoration-line" property (https://drafts.csswg.org/css-text-decor-4/#text-decoration-line-property). Apart from that WebKit also has a shorthand "-webkit-text-decoration" that allows to set "text-decoration-line", "text-decoration-style" and "text-decoration-color" in just one delcaration. "text-decoration" is now a shorthand in the spec (https://drafts.csswg.org/css-text-decor-4/#text-decoration-property), so it'd be nice to remove the prefix from "-webkit-text-decoration" and make it a shorthand. Ideally including the possibility to set "text-decoration-thickness" as that's also supported in WebKit. Websites using the old CSS2 property would still keep working as "text-decoration: underline" will work without problems. And we'd add support for things like "text-decoration: green underline".
<rdar://problem/83182835>
Created attachment 442400 [details] Patch
Created attachment 446721 [details] Patch
This patch modifies the imported WPT tests. Please ensure that any changes on the tests (not coming from a WPT import) are exported to WPT. Please see https://trac.webkit.org/wiki/WPTExportProcess
(In reply to Tim Nguyen (:ntim) from comment #3) > Created attachment 446721 [details] > Patch I'm curious what's blocking this? Been patiently waiting for a few years for something along these lines to land to allow for text-decoration /w thickness without a prefix. Thanks!
(In reply to Lorin H from comment #5) > (In reply to Tim Nguyen (:ntim) from comment #3) > > Created attachment 446721 [details] > > Patch > > I'm curious what's blocking this? Been patiently waiting for a few years for > something along these lines to land to allow for text-decoration /w > thickness without a prefix. Thanks! editing/ tests are failing unfortunately. Needs someone familiar with that code to take a look at it. Everything else in the patch works reasonably well however.
Bug 237175 made it a shorthand, there are still some things to do to make it spec compliant (see attached patch).
Some things remaining to do: - Remove -webkit-text-decoration, or make it an alias of text-decoration. - For some reason, text-decoration-thickness is inherited, it shouldn't be according to the spec. - text-decoration should parse and serialize values for any longhand, not just text-decoration-line.
In the reland of bug 237175 I made text-decoration be a shorthand of only text-decoration-line. It should be a shorthand of all the text-decoration-* longhands. This will probably need changing the editing code like in https://commits.webkit.org/r290756
*** Bug 243865 has been marked as a duplicate of this bug. ***
Created attachment 462063 [details] Patch
Created attachment 462065 [details] Patch
Created attachment 463517 [details] Patch with editing changes This is a patch with Oriol's editing changes (that were reverted due to perf regression). For simplicity, I'll deal with editing in a separate patch, so we can land this easily.
I might include editing changes after all, but restrict certain work to text-decoration to avoid perf regressions.
Pull request: https://github.com/WebKit/WebKit/pull/6466