Story 1.3: Complete positioning support including auto offset resolution, clip rect, fixed scroll behavior, and containing block edge cases. Key changes: - Refactored calculate_absolute_layout() for full §10.3.7/§10.6.4 compliance - Implemented clip: rect() parsing, style computation, layout, and paint - Fixed sticky child recursion in process_deferred_absolutes - Fixed shrink-to-fit abs_cb using unpositioned padding_box - Added collapsed_borders handling in offset_children - Propagated CSS clip to descendant stacking contexts - Tightened rect() parser to reject garbage between rect and ( - Added tracing::warn for unrecognized clip tokens - Replaced hardcoded epsilon with MARGIN_EPSILON constant - Added RTL unimplemented comments on over-constrained resolution - Strengthened tests: exact assertions, delta comparisons, new coverage - 4 new tests: negative offsets, clip suppression, padding edge distinction - 5 golden tests (222-226), promoted WPT absolute-tables-016 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
6 lines
275 B
Plaintext
6 lines
275 B
Plaintext
DisplayList items=4
|
|
SolidRect rect=(0, 0, 400, 300) color=#d3d3d3
|
|
SolidRect rect=(0, 50, 100, 40) color=#ffffe0
|
|
Text rect=(0, 51.6, 26.24376, 16) text="Both" color=#000000 font_size=16
|
|
Text rect=(29.298092, 51.6, 25.198236, 16) text="auto" color=#000000 font_size=16
|