Native rich-text CSS namespaces
Internal XHTML style sheets ondersteunen CSS namespace-declaraties en gekwalificeerde element- en attribute-selectors via de bestaande native rich-text-decoder
<body xmlns="http://www.w3.org/1999/xhtml" xmlns:meta="urn:review">
<style>
@namespace h "http://www.w3.org/1999/xhtml";
@namespace review "urn:review";
h|span[review|status="ready"] { color: #204080; font-weight: bold }
</style>
<p><span meta:status="ready">Approved</span></p>
</body>
CSS-prefixes identificeren namespace-URI's onafhankelijk van XML-prefixes, dus review|status in het voorbeeld matcht meta:status omdat beide prefixes naar urn:review resolven
Prefix-namen zijn case-sensitive en accepteren gewone CSS identifier-escapes; namespace-URI-waarden accepteren geqoutete strings en geqoutete of ongeqoutete url()-syntax
Comments binnen een ongeqoutet url-token blijven letterlijke URI-tekens; whitespace rond de ongeqoutete URI valt buiten de waarde
De laatste geldige declaratie voor een prefix wint binnen diens style-element; de laatste default-declaratie wint onafhankelijk, en bindings lekken niet naar een ander style-element
Plaats declaraties vóór style-regels en herkende non-import at-rules; een onbekende genegeerde at-rule sluit het declaratiegebied niet
Gekwalificeerde namen en default namespaces
h|span matcht een lokale span-naam in de voor h gedeclareerde URI, *|span accepteert elke namespace, en |span vraagt geen namespace
h|* matcht elke elementnaam in de gedeclareerde URI; de decoder blijft het bestaande ondersteunde XHTML-element-profiel consumeren
Een default-declaratie zoals @namespace "urn:review"; beperkt niet-gekwalificeerde element-selectors en gewone compounds met een impliciete universal selector
Een lege default-URI kiest elementen zonder namespace; de letterlijke URI "*" is een gewone URI en verschilt van het wildcard-prefix in *|span
Attribute-selectors ondersteunen gedeclareerde prefixes, wildcard-prefixes en expliciet lege prefixes; ongeprefixeerde attributes blijven in geen enkele namespace ongeacht de default element-namespace
XML namespace-declaraties tellen niet als gewone attributes; namespace-resolutie volgt de element-scope van het attribute zelf en respecteert lokale prefix-shadowing, inclusief het built-in xml-prefix
Functionele selectors
Het subject-compound binnen :is(), :where() en :not() laat de default namespace-restrictie weg wanneer het geen expliciete type- of universal selector heeft
Een expliciete universal selector behoudt die restrictie; eerdere ancestor-compounds, relatieve :has()-argumenten en of-filters in positionele selectors behouden gewone namespace-matching
Een niet-gedeclareerd CSS-prefix invalideert diens selector; forgiving is/where-lijsten kunnen andere geldige branches behouden, terwijl strikte selector-groepen diens bestaande whole-group-invalideringsregels houden
Opgeslagen uitvoer en resourcelimieten
Berekende styles voeden opgeslagen RV en echte widget-appearances via native Pascal, Windows-jobs en V1-callbacks, en Linux JSON- en V1-callbacks
Bestaande importance-, specificity-, bronorderings- en property-inheritance-regels blijven gelden na namespace-matching
Namespace-declaratie-opslag deelt MaxNodes, namespace-scanning deelt MaxTotalCodeUnits, en geërfde attribute-namespace-opzoek rekent begrensd matching- en scanwerk af
Annulerings- en budgetfalen behouden de eerdere decoder-uitvoer en gecommitte import-status; aanroepers kunnen opnieuw proberen met de originele invoer en normale limieten
Externe style sheets, conditionele media-regels, bredere state- en scope-pseudo classes, tabellen en algemene CSS-layout blijven actief werk
Native rich-text style sheets · Native form-data interchange