mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-09-02 15:46:33 +00:00
LibWeb/CSS: Reimplement var()/attr() as arbitrary substitution functions
"Arbitrary substitution functions" are a family of functions that includes var() and attr(). All of them resolve to an arbitrary set of component values that are not known at parse-time, so they have to be substituted at computed-value time. Besides it being nice to follow the spec closely, this means we'll be able to implement the others (such as `if()` and `inherit()`) more easily. The main omission here is the new "spread syntax", which can be implemented in the future.
This commit is contained in:
parent
b417d13a7b
commit
b6032b0fcd
Notes:
github-actions[bot]
2025-07-09 15:45:46 +00:00
Author: https://github.com/AtkinsSJ
Commit: b6032b0fcd
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/5226
Reviewed-by: https://github.com/tcl3 ✅
11 changed files with 480 additions and 346 deletions
|
@ -2,19 +2,19 @@ Harness status: OK
|
|||
|
||||
Found 30 tests
|
||||
|
||||
4 Pass
|
||||
26 Fail
|
||||
9 Pass
|
||||
21 Fail
|
||||
Pass `initial` as a value for an unregistered custom property
|
||||
Fail `inherit` as a value for an unregistered custom property
|
||||
Fail `unset` as a value for an unregistered custom property
|
||||
Pass `inherit` as a value for an unregistered custom property
|
||||
Pass `unset` as a value for an unregistered custom property
|
||||
Fail `revert` as a value for an unregistered custom property
|
||||
Pass `revert-layer` as a value for an unregistered custom property
|
||||
Fail `initial` as a value for a non-inheriting registered custom property
|
||||
Fail `initial` as a value for an inheriting registered custom property
|
||||
Fail `inherit` as a value for a non-inheriting registered custom property
|
||||
Fail `inherit` as a value for an inheriting registered custom property
|
||||
Pass `inherit` as a value for a non-inheriting registered custom property
|
||||
Pass `inherit` as a value for an inheriting registered custom property
|
||||
Fail `unset` as a value for a non-inheriting registered custom property
|
||||
Fail `unset` as a value for an inheriting registered custom property
|
||||
Pass `unset` as a value for an inheriting registered custom property
|
||||
Fail `revert` as a value for a non-inheriting registered custom property
|
||||
Fail `revert` as a value for an inheriting registered custom property
|
||||
Pass `revert-layer` as a value for a non-inheriting registered custom property
|
||||
|
|
|
@ -2,16 +2,15 @@ Harness status: OK
|
|||
|
||||
Found 11 tests
|
||||
|
||||
4 Pass
|
||||
7 Fail
|
||||
11 Pass
|
||||
Pass Self-cycle
|
||||
Pass Simple a/b cycle
|
||||
Pass Three-var cycle
|
||||
Fail Cycle that starts in the middle of a chain
|
||||
Fail Cycle with extra edge
|
||||
Fail Cycle with extra edge (2)
|
||||
Fail Cycle with extra edge (3)
|
||||
Fail Cycle with secondary cycle
|
||||
Fail Cycle with overlapping secondary cycle
|
||||
Fail Cycle with deeper secondary cycle
|
||||
Pass Cycle that starts in the middle of a chain
|
||||
Pass Cycle with extra edge
|
||||
Pass Cycle with extra edge (2)
|
||||
Pass Cycle with extra edge (3)
|
||||
Pass Cycle with secondary cycle
|
||||
Pass Cycle with overlapping secondary cycle
|
||||
Pass Cycle with deeper secondary cycle
|
||||
Pass Cycle in unused fallback
|
Loading…
Add table
Add a link
Reference in a new issue