NextPDF implementeert de weergave van Cascading Style Sheets (CSS) op basis van gepubliceerde specificaties van het World Wide Web Consortium (W3C). Gebruik deze pagina om elke CSS-module in het specificatiecorpus van NextPDF op te zoeken, samen met de door audit bevestigde ondersteuningsstatus van die module in de weergavepijplijn.
Deze revisie komt voort uit de waarheidsaudit van Wave 4 B2 (plansectie 4.4). De vorige structurele revisie gebruikte niet-geverifieerde tijdelijke badges. De audit beoordeelde elke rij opnieuw aan de hand van daadwerkelijk bewijs op schijf (src/Html/, tests/, tests/Wpt/corpus/), de v8/v9 architecture decision records (ADR’s) voor brekende wijzigingen en de interne audit van CSS-eigenschapdekking. De audit gaf voorrang aan eerlijkheid boven dekking: wanneer het bewijs tot een lagere badge leidde, werd die badge verlaagd.
Vier badges classificeren elke rij onder het verificatiecontract:
- Verified — Implementatie in
src/Html/ plus een substantiële, specifieke geautomatiseerde fixture: ofwel een suite op eigenschapsniveau van drie of meer bestanden onder tests/Unit/Html/<Module>/, of een corpusshard met Web Platform Tests (WPT) van vijftig of meer fixtures onder tests/Wpt/corpus/. Er is nog geen golden Portable Document Format (PDF)-baseline per CSS-module ingericht, dus geverifieerde rijen gebruiken het reproduceerbaarheidsprofiel structural (PHPUnit-assertie-equivalentie), nooit bitwise.
- Claimed — Het gedrag van de module is geïmplementeerd in
src/Html/ (bronpad vermeld), maar de specifieke fixture is beperkt, gedeeld of afwezig. Elke claimed-rij met een concrete implementatie heeft een backfill-issue.
- Not supported — De statische-PDF-weergavepijplijn omvat deze module niet: runtime-/browser-only API’s, scrolling-/animation-runtimes en door W3C stopgezet werk. De rij vermeldt de reden.
- Unknown — De module staat in het corpus, maar de audit vond geen bewijs van implementatie of fixtures. De audit heeft nooit optimistisch ingeschat om het aantal te verhogen.
De badge partial van de structurele revisie is verwijderd: elke voormalige partial-rij is opnieuw beoordeeld als claimed (implementatie aanwezig, geen specifieke fixture) of verified.
| Badge | Betekenis |
|---|
verified | src/Html/ + specifieke fixture-suite (≥3 bestanden) of WPT-shard (≥50 fixtures); slaagt deterministisch onder het profiel structural. |
claimed | Implementatiebewijs in src/Html/, geen specifieke fixture. Backfill-issue bijgehouden. |
not-supported | Expliciet uitgesloten van de statische-PDF-scope. Reden vastgelegd. |
unknown | Geen vaststelbaar bewijs. Niet optimistisch ingeschat. |
De kolom Confidence is een eerlijk, niet-binair signaal voor het bewijs achter de vermelde badge (high / medium / low). Deze kolom staat los van de badge zelf.
NextPDF ondersteunt de hieronder vermelde CSS-modules op de aangegeven niveaus. Verified-rijen hebben een specifieke geautomatiseerde fixture-suite of een substantiële WPT-corpusshard die het gedrag van NextPDF toetst en deterministisch slaagt onder het reproduceerbaarheidsprofiel structural. Claimed-rijen hebben implementatiebewijs in src/Html/, maar nog geen specifieke fixture; elke rij wordt bijgehouden via een backfill-issue onder tracking issue #614. Not supported-rijen documenteren expliciete scopegrenzen voor het statische-PDF-doel.
Geen enkele rij claimt reproduceerbaarheid op byteniveau, omdat deze revisie geen golden PDF-baseline per CSS-module heeft. Het verificatiecontract verbiedt lege rijen: wanneer de ondersteuning niet kan worden vastgesteld, is de rij unknown.
| Status | Modules | Confidence (high / medium / low) |
|---|
| Verified | 12 | 8 / 4 / 0 |
| Claimed | 49 | 0 / 35 / 14 |
| Not supported | 67 | 62 / 5 / 0 |
| Unknown | 39 | 0 / 0 / 39 |
| Totaal | 167 | 70 / 44 / 53 |
Het summary-blok van de structurele revisie was intern inconsistent: het meldde een totaal van 148 (18 verified / 11 partial / 11 claimed / 53 not-supported / 55 unknown), terwijl het bestand 167 modulerijen bevatte waarvan de labels optelden tot 34 verified / 13 partial / 13 claimed / 68 not-supported / 39 unknown. Deze audit heeft het totaal gecorrigeerd naar het werkelijke aantal van 167 en elke rij opnieuw beoordeeld aan de hand van bewijs op schijf: Verified daalde van een geclaimde 34 naar een onderbouwde 12. Die verlaging is het juiste resultaat van een eerlijke audit, geen regressie. De volledige before/after-delta staat in het in-repo _css-matrix-truth-report.md-sidecarbestand.
De structurele revisie heeft drie actieve mogelijkheden ten onrechte gelabeld als verwijderd of niet-ondersteund. ADR-027 en ADR-028 hebben alleen de opt-in-markeringen van de ExperimentalFeature-enum verwijderd; de mogelijkheden blijven LIVE en zijn standaard ingeschakeld:
- Subgrid (
css_grid_2) — LIVE; CssFeatureFlags::$layoutSubgrid standaard ingeschakeld. Het was ten onrechte gelabeld als „subgrid hard-removed v9.0.0”.
@container-query’s (css_contain_2) — runtime-dispatch expliciet ongewijzigd door ADR-028; flag-opt-out behouden. Het was ten onrechte gelabeld als „hard-removed v9.0.0”.
writing-mode: vertical-lr (css_writing_modes_3) — standaard ingeschakeld en Stable sinds v7.0.0; ADR-027 promoveerde alleen de deprecation-handshake. Het was ten onrechte gelabeld als „deprecated/removed v8.0.0”.
De machineleesbare set rijen per module bevindt zich in het in-repo css-support-matrix-data.yaml, dat de bron van waarheid is. Deze pagina is de mensleesbare weergave, gegroepeerd per categorie. Astro-componenten verwerken de YAML-gegevens rechtstreeks tijdens de documentatiebuild.
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Flexible Box Layout (css_flexbox_1) | 1 | CR | Verified | high | src/Html/Flex/, tests/Unit/Html/Flex/ (50 bestanden) |
CSS Grid Layout (css_grid_1) | 1 | REC | Verified | high | src/Html/Grid/, tests/Unit/Html/Grid/ (25), tests/Wpt/corpus/css-grid/ (654) |
CSS Grid Layout — Subgrid (css_grid_2) | 2 | CR | Claimed | medium | src/Html/Grid/Subgrid/ + WPT-shard met 80 fixtures + 1 integratietest. LIVE en standaard ingeschakeld (ADR-028 verwijderde alleen de enum-markering). |
CSS Grid Layout — Masonry (css_grid_3) | 3 | ED | Not supported | high | Masonry valt buiten de scope voor v5.x. |
CSS Display (css_display_3) | 3 | CR | Claimed | medium | DisplayResolver.php + resolver-tests; geen specifieke eigenschapsuite. |
CSS Display (css_display_4) | 4 | ED | Unknown | low | Geen L4-bewijs. |
CSS Positioned Layout (css_position_3) | 3 | WD | Verified | high | src/Html/Positioned/, tests/Unit/Html/Positioned/ (8 bestanden) |
CSS Positioned Layout (css_position_4) | 4 | ED | Unknown | low | position: sticky/anchor niet onderbouwd. |
CSS Box Alignment (css_align_3) | 3 | WD | Claimed | medium | Geïmplementeerd binnen de Flex/Grid-engines; geen losstaande suite. |
CSS Box Sizing (css_sizing_3) | 3 | CR | Claimed | low | src/Html/Length/; Phase 0-audit laat zien dat width/height grotendeels POLICY-ONLY is. |
CSS Box Sizing (css_sizing_4) | 4 | ED | Unknown | low | Intrinsic-size-trefwoorden niet onderbouwd. |
CSS Box Model (css_box_3) | 3 | WD | Claimed | medium | Dekking van margin-collapse; left/right-boxmodel ontbreekt volgens de Phase 0-audit. Backfill #617. |
CSS Box Model (css_box_4) | 4 | ED | Unknown | low | Geen bewijs. |
CSS Multi-column Layout (css_multicol_1) | 1 | CR | Claimed | medium | src/Html/MultiCol/; geen eigenschapsuite. |
CSS Multi-column Layout (css_multicol_2) | 2 | ED | Unknown | low | Geen bewijs. |
CSS Fragmentation (css_break_3) | 3 | CR | Verified | medium | src/Html/Fragmentation/, tests/Unit/Html/PagedMedia/ (20 bestanden) |
CSS Fragmentation (css_break_4) | 4 | ED | Unknown | low | Geen bewijs. |
CSS Containment (css_contain_1) | 1 | REC | Not supported | medium | Geen contain-applicator voor layout/paint; geen live-updatemodel. |
CSS Containment — @container (css_contain_2) | 2 | CR | Claimed | low | WPT-shard met 114 fixtures + retained-layout-model van ADR-017/021. Runtime LIVE (ADR-028 verwijderde alleen de enum-markering). |
CSS Containment (css_contain_3) | 3 | ED | Not supported | medium | Style-containment valt buiten de scope. |
CSS Inline Layout (css_inline_3) | 3 | WD | Claimed | medium | src/Html/Layout/InlineLayout/ + 8 tests; initial-letter niet onderbouwd. |
CSS Logical Properties (css_logical_1) | 1 | WD | Claimed | medium | WritingMode logical→physical-resolver; geen specifieke fixture. Logische text-align: start/end worden opgelost ten opzichte van direction — onder direction: rtl is start de rechterrand — en worden toegepast in tabelcellen. |
CSS Page Floats (css_page_floats_3) | 3 | ED | Not supported | high | Buiten de scope voor v5.x. |
CSS Pagination Templates (css_page_templates_3) | 3 | ED | Not supported | high | Paginering met meerdere regio’s valt buiten de scope. |
CSS Exclusions (css_exclusions_1) | 1 | WD | Not supported | high | Tier C; geen toezegging in de roadmap. |
CSS Regions (css_regions_1) | 1 | WD | Not supported | high | Stopgezet door W3C. |
CSS Template Layout (css_template_1) | 1 | NOTE | Not supported | high | Buiten de scope. |
CSS Layout API (css_layout_api_1) | 1 | WD | Not supported | high | Worklet-runtime; niet van toepassing. |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Backgrounds and Borders (css_backgrounds_3) | 3 | CR | Claimed | medium | src/Html/Background/, BorderRenderer.php; bg-color alleen voor Table, volgens de Phase 0-audit. Backfill #628. |
CSS Backgrounds (css_backgrounds_4) | 4 | ED | Unknown | low | Geen bewijs. |
CSS Borders and Box Decorations (css_borders_4) | 4 | ED | Unknown | low | Geen bewijs. |
CSS Gap Decorations (css_gaps_1) | 1 | ED | Unknown | low | Geen bewijs. |
CSS Masking (css_masking_1) | 1 | CR | Not supported | medium | clip-path/mask niet doorgestuurd naar PDF-clip-operators. |
CSS Shadow Module (css_shadow_1) | 1 | ED | Claimed | medium | src/Html/Shadow/ (BoxShadowRenderer); geen specifieke fixture. |
CSS Shapes (css_shapes_1) | 1 | CR | Not supported | high | shape-outside valt buiten de scope voor v5.x. |
CSS Shapes (css_shapes_2) | 2 | ED | Not supported | high | Buiten de scope. |
Filter Effects (filter_effects_1) | 1 | WD | Not supported | high | SVG-filterprimitieven niet doorgestuurd naar PDF. |
Filter Effects (filter_effects_2) | 2 | ED | Not supported | high | Buiten de scope. |
Compositing and Blending (compositing_1) | 1 | CR | Claimed | medium | PDF-blend-mode-mapping in PaintCommand/; één blend-mode-test. |
Compositing (compositing_2) | 2 | ED | Unknown | low | Geen bewijs. |
CSS Fill and Stroke (fill_stroke_3) | 3 | ED | Unknown | low | Geen bewijs. |
Geometry Interfaces (geometry_1) | 1 | CR | Not supported | high | DOM Matrix-runtime-API. |
DOMMatrix (matrix) | 1 | NOTE | Not supported | high | Browser-runtime-API. |
Motion Path (motion_1) | 1 | WD | Not supported | high | Alleen voor animatie. |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Fonts (css_fonts_3) | 3 | REC | Verified | medium | src/Html/Font/, tests/Unit/Font/ (9) + FontResolver-tests |
CSS Fonts (css_fonts_4) | 4 | CR | Verified | high | src/Html/FontFace/, tests/Unit/Html/FontFace/ (31 bestanden) |
CSS Fonts (css_fonts_5) | 5 | ED | Unknown | low | font-tech() niet onderbouwd. |
CSS Font Loading (css_font_loading_3) | 3 | WD | Not supported | high | JS FontFace-runtime-API; laden aan PHP-zijde via FontResolver. |
CSS Text (css_text_3) | 3 | CR | Claimed | medium | src/Html/Text/ + 5 tests; Phase 0 FULL voor align/indent/spacing, white-space alleen voor <pre>. Backfill #618. |
CSS Text (css_text_4) | 4 | ED | Claimed | medium | src/Html/Layout/Hyphenation/ + strategy-tests; overige L4-eigenschappen in afwachting. |
CSS Text Decoration (css_text_decor_3) | 3 | CR | Claimed | medium | src/Html/Text/; Phase 0 FULL maar geen specifieke fixture. Backfill #619. |
CSS Text Decoration (css_text_decor_4) | 4 | ED | Unknown | low | text-emphasis niet onderbouwd. |
CSS Ruby (css_ruby_1) | 1 | WD | Not supported | high | Ruby-annotaties vallen buiten de scope voor v5.x. |
CSS Writing Modes (css_writing_modes_3) | 3 | REC | Claimed | medium | src/Html/Layout/WritingMode/ (7 tests) + WPT-shard met 140 fixtures. vertical-lr LIVE en standaard ingeschakeld (ADR-027). direction: rtl is functioneel — UAX#9 bidirectionele herordening plus Arabische contextuele shaping, met start-uitlijning in tabelcellen. Niet-tabel-blokuitlijning en justify worden nog niet toegepast, en het HTML-dir-attribuut wordt niet toegewezen (gebruik CSS direction). Zie Render right-to-left Arabic HTML. Backfill #629. |
CSS Writing Modes (css_writing_modes_4) | 4 | ED | Unknown | low | Geen bewijs. |
CSS Speech (css_speech_1) | 1 | CR | Not supported | high | Aurale weergave niet van toepassing. |
CSS Mobile Text Size Adjustment (css_size_adjust_1) | 1 | ED | Not supported | high | Mobiele UA-hint; niet van toepassing. |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Color (css_color_3) | 3 | REC | Claimed | medium | src/Html/Color/, NamedColors.php + parser-tests; geen module-fixture. Backfill #620. |
CSS Color (css_color_4) | 4 | CR | Claimed | medium | Lab/LCH/OKLab-parsing; getrouwheid van de PDF-colorspace niet getoetst. |
CSS Color (css_color_5) | 5 | WD | Unknown | low | color-mix() niet onderbouwd. |
CSS Color (css_color_6) | 6 | ED | Unknown | low | Geen bewijs. |
CSS Color Adjustment (css_color_adjust_1) | 1 | CR | Not supported | high | color-scheme UA-gestuurd; niet van toepassing. |
CSS Color HDR (css_color_hdr_1) | 1 | ED | Not supported | high | HDR niet doorgestuurd naar PDF-colorspace. |
CSS Images (css_images_3) | 3 | CR | Claimed | medium | src/Html/Gradient/ (linear/radial/conic) + parser-tests. |
CSS Images (css_images_4) | 4 | ED | Unknown | low | image()/image-set() niet onderbouwd. |
CSS Images (css_images_5) | 5 | ED | Unknown | low | Geen bewijs. |
CSS Image Animation (css_image_animation_1) | 1 | ED | Not supported | high | Alleen voor animatie. |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Selectors (selectors_3) | 3 | REC | Claimed | medium | HasSelectorResolver.php + CssRule-tests; fixture is één enkel corpus.json. Backfill #627. |
CSS Selectors (selectors_4) | 4 | WD | Claimed | medium | :is()/:where()/:not()/:has() getest; geavanceerde L4 in afwachting. |
CSS Selectors (selectors_5) | 5 | ED | Unknown | low | Geen bewijs. |
CSS Non-element Selectors (selectors_nonelement_1) | 1 | WD | Not supported | high | Browser-stylesheet-hooks; niet van toepassing. |
CSS Pseudo-Elements (css_pseudo_4) | 4 | WD | Claimed | medium | src/Html/Pseudo/ (12) + ~10 renderer-tests; geen module-suite. |
CSS Cascading and Inheritance (css_cascade_3) | 3 | REC | Verified | high | src/Html/Cascade/, tests/Unit/Html/Cascade/ (9 bestanden) |
CSS Cascading (css_cascade_4) | 4 | CR | Verified | high | Cascade/Layer/ + revert/layer-tests |
CSS Cascading (css_cascade_5) | 5 | CR | Verified | high | AtRule/Layer/ + Cascade/Layer/-suites |
CSS Cascading (css_cascade_6) | 6 | WD | Unknown | low | @scope niet onderbouwd. |
CSS Values and Units (css_values_3) | 3 | REC | Claimed | medium | CssValueParser.php + unit-tests; fixture is één enkel corpus.json. Backfill #626. |
CSS Values and Units (css_values_4) | 4 | CR | Claimed | medium | calc() geïmplementeerd; geneste min()/max()/clamp() niet volledig onderbouwd. |
CSS Values and Units (css_values_5) | 5 | ED | Unknown | low | Geen bewijs. |
CSS Custom Properties (css_variables_1) | 1 | CR | Claimed | medium | src/Html/CustomProperty/ + scope-coveragetest. |
CSS Custom Properties (css_variables_2) | 2 | ED | Unknown | low | Geen bewijs. |
CSS Conditional Rules (css_conditional_3) | 3 | CR | Claimed | medium | @media/@supports-parsing getest; @container-runtime behouden (ADR-028). |
CSS Conditional Rules (css_conditional_4) | 4 | ED | Unknown | low | Geen bewijs. |
CSS Conditional Rules (css_conditional_5) | 5 | ED | Unknown | low | Geen bewijs. |
CSS Conditional Values (css_conditional_values_1) | 1 | ED | Unknown | low | Geen bewijs. |
CSS Namespaces (css_namespaces_3) | 3 | REC | Claimed | low | Parser tolereert @namespace; geen dekking voor matching. |
CSS Style Attributes (css_style_attr_1) | 1 | CR | Claimed | medium | Inline-style-parsing door de hele pijplijn; geen specifieke fixture. Backfill #622. |
CSS Syntax (css_syntax_3) | 3 | CR | Claimed | medium | CssParser/ + grammar/fuzz-tests; geen conformance-fixture. Backfill #623. |
CSS Nesting (css_nesting_1) | 1 | CR | Claimed | medium | Gepromoveerd uit unknown — CssNestingTest + desugar/inner-scan-tests. |
CSS Environment Variables (css_env_1) | 1 | ED | Not supported | medium | UA-gestuurd env(); niet van toepassing. |
CSS Custom Functions and Mixins (css_mixins_1) | 1 | ED | Unknown | low | Geen bewijs. |
CSS Extensions (css_extensions_1) | 1 | NOTE | Unknown | low | Geen bewijs. |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Lists and Counters (css_lists_3) | 3 | WD | Claimed | medium | HtmlListRenderer.php/CssCounterManager.php + 18 tests; list-style-type niet toegepast op ol/ul (Phase 0). |
CSS Counter Styles (css_counter_styles_3) | 3 | CR | Claimed | medium | Ingebouwde counter-styles; @counter-style in afwachting. |
CSS Generated Content (css_content_3) | 3 | WD | Claimed | medium | CssContentSegment.php + pseudo-tests; omzeilt de applicator (Phase 0). Backfill #621. |
CSS Generated Content for Paged Media (css_gcpm_3) | 3 | WD | Claimed | medium | src/Html/Gcpm/-registries + footnote-capture-test. |
CSS Generated Content for Paged Media (css_gcpm_4) | 4 | ED | Unknown | low | Geen bewijs. |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Paged Media (css_page_3) | 3 | WD | Claimed | medium | Page/, PagedMedia/, PageRule.php + PageRuleParser/PageMarginBox-tests; tests/Unit/Html/Page/ heeft 1 bestand. Backfill #624. |
CSS Paged Media (css_page_4) | 4 | NOTE | Unknown | low | Toekomstige voorstellen. |
CSS Print Profile (css_print) | 1 | NOTE | Claimed | low | Het statische-PDF-doel respecteert printbeperkingen; geen conformance-fixture. |
CSS Presentation Levels (css_preslev_1) | 1 | NOTE | Not supported | high | Slideware-navigatie; niet van toepassing. |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Overflow (css_overflow_3) | 3 | WD | Claimed | low | OverflowClip/ClipRect-tests; clipping alleen voor Table-cellen (Phase 0). |
CSS Overflow (css_overflow_4) | 4 | ED | Unknown | low | Geen bewijs. |
CSS Overflow (css_overflow_5) | 5 | ED | Unknown | low | Geen bewijs. |
CSS Overscroll Behavior (css_overscroll_1) | 1 | CR | Not supported | high | Scrolling-runtime; niet van toepassing. |
CSS Scroll Anchoring (css_scroll_anchoring_1) | 1 | WD | Not supported | high | Scrolling-runtime; niet van toepassing. |
CSS Scroll Snap (css_scroll_snap_1) | 1 | REC | Not supported | high | Scrolling-runtime; niet van toepassing. |
CSS Scroll Snap (css_scroll_snap_2) | 2 | WD | Not supported | high | Scrolling-runtime; niet van toepassing. |
CSS Scrollbars Styling (css_scrollbars_1) | 1 | CR | Not supported | high | UA-runtime; niet van toepassing. |
CSS Basic User Interface (css_ui_3) | 3 | REC | Not supported | medium | cursor/resize alleen voor browser-UI. |
CSS Basic User Interface (css_ui_4) | 4 | WD | Not supported | high | UA-runtime; niet van toepassing. |
CSS Form Control Styling (css_forms_1) | 1 | ED | Not supported | high | Formulierwidgets worden niet weergegeven in statische PDF. |
CSS View Transitions (css_view_transitions_1) | 1 | WD | Not supported | high | Alleen voor animatie. |
CSS View Transitions (css_view_transitions_2) | 2 | ED | Not supported | high | Alleen voor animatie. |
CSS Spatial Navigation (css_nav_1) | 1 | NOTE | Not supported | high | UA-runtime; niet van toepassing. |
CSS Route Matching (css_navigation_1) | 1 | ED | Not supported | high | UA-runtime; niet van toepassing. |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Table (css_tables_3) | 3 | WD | Verified | high | src/Html/Table/, tests/Unit/Html/Table/ (17) + ~60 TableParser-tests + 5 synthetische golden PDF’s in tests/Corpus/tables/ |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Transforms (css_transforms_1) | 1 | CR | Claimed | medium | Renderer/Transform/ + ApplyTransformCommand.php; geen specifieke fixture. |
CSS Transforms (css_transforms_2) | 2 | ED | Unknown | low | 3D-transforms niet onderbouwd. |
CSS Animations (css_animations_1) | 1 | WD | Not supported | high | Animatietijdlijn niet van toepassing op statische PDF. |
CSS Animations (css_animations_2) | 2 | ED | Not supported | high | Buiten de scope. |
CSS Transitions (css_transitions_1) | 1 | WD | Not supported | high | Buiten de scope. |
CSS Transitions (css_transitions_2) | 2 | ED | Not supported | high | Buiten de scope. |
CSS Easing Functions (css_easing_1) | 1 | CR | Not supported | high | Alleen voor animatie. |
CSS Easing Functions (css_easing_2) | 2 | ED | Not supported | high | Alleen voor animatie. |
Web Animations (web_animations_1) | 1 | WD | Not supported | high | Browser-runtime-API. |
Web Animations (web_animations_2) | 2 | ED | Not supported | high | Browser-runtime-API. |
Web Animations CSS Integration (web_animations_css_integration) | 1 | ED | Not supported | high | Browser-runtime-API. |
Animation Triggers (animation_triggers) | 1 | ED | Not supported | high | Alleen voor animatie. |
Pointer-driven Animations (pointer_animations_1) | 1 | ED | Not supported | high | Runtime-invoergebeurtenissen; niet van toepassing. |
Scroll-driven Animations (scroll_animations_1) | 1 | ED | Not supported | high | Scrolling-runtime; niet van toepassing. |
CSS Animation Worklet (css_animation_worklet) | 1 | ED | Not supported | high | Browser-worklet-runtime. |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Anchor Positioning (css_anchor_position_1) | 1 | WD | Unknown | low | Geen anchor()-broncode. |
CSS Anchor Positioning (css_anchor_position_2) | 2 | ED | Unknown | low | Geen bewijs. |
CSS Highlight API (css_highlight_api_1) | 1 | WD | Not supported | high | Browser-runtime-API. |
CSS Properties and Values API (css_properties_values_api_1) | 1 | CR | Not supported | high | Browser-runtime-API. |
CSS Painting API (css_paint_api_1) | 1 | WD | Not supported | high | Browser-worklet-runtime. |
CSS Typed OM (css_typed_om_1) | 1 | WD | Not supported | high | Browser-runtime-API. |
CSSOM (cssom_1) | 1 | WD | Not supported | high | Browser-DOM-API. |
CSSOM View (cssom_view_1) | 1 | WD | Not supported | high | Browser-DOM-API. |
CSS Will Change (css_will_change_1) | 1 | CR | Not supported | high | Browser-optimalisatiehint. |
CSS Linked Parameters (css_link_params_1) | 1 | ED | Unknown | low | Geen bewijs. |
CSS Line Grid (css_line_grid_1) | 1 | NOTE | Unknown | low | Geen bewijs. |
CSS Rhythmic Sizing (css_rhythm_1) | 1 | ED | Unknown | low | Geen bewijs. |
CSS Round Display (css_round_display_1) | 1 | ED | Not supported | high | Round-display-doel niet van toepassing. |
CSS Shaders (css_shaders_1) | 1 | NOTE | Not supported | high | Verwijderd door W3C. |
CSS Viewport (css_viewport_1) | 1 | NOTE | Not supported | high | UA-viewport; niet van toepassing. |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
Media Queries (mediaqueries_3) | 3 | REC | Claimed | medium | CssParser/ + media-query-coveragetests; geen specifieke fixture. Backfill #625. |
Media Queries (mediaqueries_4) | 4 | CR | Claimed | medium | @media print/prefers-color-scheme geparseerd; range-syntaxis in afwachting. |
Media Queries (mediaqueries_5) | 5 | WD | Unknown | low | Geen bewijs. |
| W3C-module | Niveau | W3C | Status | Confidence | Bewijs |
|---|
CSS Level 2 (css_2_1) | 2.1 | REC | Claimed | low | Baseline verspreid over src/Html/; geen enkele conformance-fixture. |
CSS Level 2.2 (css_2_2) | 2.2 | NOTE | Claimed | low | Verspreide baseline; geen specifieke fixture. |
CSS Snapshot 2026 (css_snapshot_2026) | snapshot | NOTE | Claimed | low | Index van andere modules; de status is het geaggregeerde resultaat van de gerefereerde rijen. |
Deze W3C-modules komen voor in het corpus, maar vallen buiten de CSS-weergavepijplijn. Waar van toepassing verwijzen de bijbehorende functiepagina’s ernaar.
| W3C-module | W3C | Status | Confidence | Locatie |
|---|
W3C SVG 1.1 (svg_1_1) | REC | Claimed | low | Subset van inline SVG-paint in Renderer/PaintCommand/; geen CSS-matrix-fixture. |
W3C SVG 2.0 (svg_2_0) | CR | Unknown | low | Onderdeel van de Premium-pijplijn; geen core-bewijs. |
W3C PNG 3rd Edition (png_3) | WD | Claimed | low | PNG-decodering in de module Graphics/ (buiten HTML/CSS). |
W3C WOFF 1.0 (woff_1_0) | REC | Claimed | low | WOFF via de Font-stack; geen CSS-matrix-fixture. |
W3C WOFF 2.0 (woff_2_0) | REC | Claimed | low | WOFF2 via de Font-stack; geen CSS-matrix-fixture. |
W3C WCAG 2.2 (wcag_2_2) | REC | Verified | medium | src/Html/Aam/, tests/Unit/Accessibility/HtmlAam/ (4 bestanden) — PDF/UA-2. |
W3C WAI-ARIA 1.2 (wai_aria_1_2) | REC | Verified | medium | tests/Unit/Accessibility/HtmlAam/ (4 bestanden). |
W3C ARIA Bundle (w3c_aria_bundle) | REC | Claimed | low | Richtlijnenbundel; het concrete bewijs is de WAI-ARIA-rij. |
W3C AAM Bundle (w3c_aam_bundle) | NOTE | Claimed | low | Bundelverwijzing; het bewijs zijn de WAI-ARIA/WCAG-rijen. |
W3C ATAG 2.0 (atag_2_0) | REC | Not supported | high | Toegankelijkheid van authoring-tools; niet van toepassing. |
W3C XSL 1.1 (xsl_1_1) | REC | Not supported | high | XSL-FO is een parallel opmaakmodel; niet geïmplementeerd. |
W3C XSD 1.1 Part 1 (xsd_1_1_part1) | REC | Not supported | high | XML-schema; niet van toepassing. |
W3C XSLT 3.0 (xslt_3_0) | REC | Not supported | high | Transformatietaal; niet van toepassing. |
Resize Observer (resize_observer_1) | CR | Not supported | high | Browser-runtime-API. |
Voor promotie van een rij van claimed → verified geldt:
- Er bestaat een specifieke fixture-suite op eigenschapsniveau onder
tests/Unit/Html/<Module>/ (≥3 bestanden) of een substantiële WPT-corpusshard (≥50 fixtures) onder tests/Wpt/corpus/ wordt gepromoveerd tot toetsende test.
- De fixture toetst het gedrag van NextPDF aan de W3C-grammatica voor de primaire eigenschappen van de module.
- De fixture slaagt deterministisch onder een
NextPDF\Testing\ReproducibilityProfile (structural voor assertie-fixtures; bitwise pas zodra er golden PDF-baselines per module bestaan).
- De
nextpdf_status van de rij in het in-repo css-support-matrix-data.yaml wijzigt naar verified, met bijgewerkte fixture_path, repro_profile en confidence.
Voor promotie van een rij van unknown → claimed geldt:
- Een auditronde bevestigt implementatiebewijs in
src/Html/ (vermeld het pad in evidence + notes).
- Er wordt een backfill-issue geopend en gekoppeld in
backfill_issue.
- CSS-matrix-waarheidsrapport (
_css-matrix-truth-report.md, in-repo) — before/after-auditdelta’s, confidence-verdeling, de-inflatielogboek.
- Audit van CSS-eigenschapdekking (
architecture/css-property-coverage-audit.md, in-repo) — interne audit met vier toestanden per eigenschap (Policy/Parsed/Applied/Rendered).
- ADR-027 v8.0.0 BREAKING (
architecture/adr/ADR-027-v8-breaking.md, in-repo) — promotie van de vertical-lr deprecation-handshake (mogelijkheid behouden).
- ADR-028 v9.0.0 BREAKING (
architecture/adr/ADR-028-v9-breaking.md, in-repo) — verwijdering van de Grid/Subgrid/@container-enum-markering (mogelijkheden behouden).
- Backfill-tracking-issue: https://github.com/nextpdf-labs/nextpdf/issues/614