Bug 262762
| Summary: | Implement percentage values for letter-spacing and word-spacing [css-text-4] | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | fantasai <fantasai.bugs> |
| Component: | Text | Assignee: | Nobody <webkit-unassigned> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | karlcow, mmaxfield, ntim, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | Safari 17 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| See Also: |
https://bugs.webkit.org/show_bug.cgi?id=270347 https://github.com/web-platform-tests/wpt/pull/44882 |
||
fantasai
Background:
CSS Text Level 4 <https://www.w3.org/TR/css-text-4/> adds support for percentage values of word-spacing and letter-spacing. These inherit as percentages, so that they are always relative to the currently-effective font-size.
Current Status:
WebKit has support for percentage values of word-spacing (but not calc() values) but calculates them against the width of a space instead of the font-size, and doesn't inherit them properly; and has no support for percentage letter-spacing.
Proposal:
Re-implement percentage values of word-spacing per spec, add support for percentage values of letter-spacing, and implement support for calc().
Compat Risks:
Firefox also implements percentage word-spacing in a similar way to WebKit, but Chrome doesn't implement percentage word-spacing, so it's unlikely that Web content depends on it. There could be some lock-in in single-engine environments, but because the current implementation doesn't implement inheritance properly, the benefit of using % over fixed values is not fully realized in the current implementation, so the incentive to use them over 'em' values (which have existed since CSS1) is limited.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
fantasai
rdar://114538918
Radar WebKit Bug Importer
<rdar://problem/116562262>
Alexey Proskuryakov
rdar://114538918
Tim Nguyen (:ntim)
https://github.com/WebKit/WebKit/pull/18771/
EWS
Committed 271357@main (6abbfb00701a): <https://commits.webkit.org/271357@main>
Reviewed commits have been landed. Closing PR #18771 and removing active labels.