Namespace CSS del rich text nativo

I fogli di stile XHTML interni supportano dichiarazioni di namespace CSS e selettori qualificati di elementi e attributi attraverso il decoder di rich text nativo esistente

<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>

I prefissi CSS identificano gli URI dei namespace indipendentemente dai prefissi XML, quindi review|status nell'esempio corrisponde a meta:status perché entrambi i prefissi risolvono a urn:review

I nomi dei prefissi distinguono le maiuscole e accettano i normali escape degli identificatori CSS; i valori URI dei namespace accettano stringhe tra virgolette e sintassi url() tra virgolette o senza

I commenti dentro un token url senza virgolette restano caratteri URI letterali; lo spazio bianco attorno all'URI senza virgolette è escluso dal valore

L'ultima dichiarazione valida per un prefisso vince dentro il suo elemento style; l'ultima dichiarazione default vince indipendentemente, e i binding non trapelano in un altro elemento style

Posizionare le dichiarazioni prima delle regole di stile e degli at-rule riconosciuti che non sono import; un at-rule sconosciuto ignorato non chiude la regione delle dichiarazioni

Nomi qualificati e namespace predefiniti

h|span corrisponde a un nome locale span nell'URI dichiarato per h, *|span accetta qualsiasi namespace, e |span esige l'assenza di namespace

h|* corrisponde a qualsiasi nome di elemento nell'URI dichiarato; il decoder continua a consumare il profilo esistente di elementi XHTML supportati

Una dichiarazione default come @namespace "urn:review"; restringe i selettori di elemento non qualificati e i composti ordinari con un universal selector implicito

Un URI default vuoto seleziona gli elementi senza namespace; l'URI letterale "*" è un URI ordinario ed è distinto dal prefisso jolly di *|span

I selettori di attributo supportano prefissi dichiarati, prefissi jolly e prefissi vuoti espliciti; gli attributi senza prefisso restano senza namespace indipendentemente dal namespace di elemento predefinito

Le dichiarazioni di namespace XML non contano come attributi ordinari; la risoluzione dei namespace segue l'ambito dell'elemento proprio dell'attributo e rispetta l'oscuramento locale dei prefissi, incluso il prefisso xml incorporato

Selettori funzionali

Il composto soggetto dentro :is(), :where() e :not() omette la restrizione del namespace predefinito quando non ha un type o un universal selector esplicito

Un universal selector esplicito conserva quella restrizione; i composti antenati precedenti, gli argomenti relativi di :has() e i filtri of nei selettori posizionali conservano il matching dei namespace ordinario

Un prefisso CSS non dichiarato invalida il suo selettore; le liste tolleranti is/where possono conservare le altre diramazioni valide, mentre i gruppi di selettori severi conservano le loro regole esistenti di invalidazione dell'intero gruppo

Output salvato e limiti di risorse

Gli stili calcolati alimentano l'RV salvato e le appearance effettive dei widget attraverso callback Pascal nativi, job Windows e V1, e callback Linux JSON e V1

Le regole esistenti di importance, specificità, ordine sorgente ed ereditarietà delle proprietà continuano ad applicarsi dopo il matching dei namespace

L'archiviazione delle dichiarazioni di namespace condivide MaxNodes, la scansione dei namespace condivide MaxTotalCodeUnits, e la ricerca ereditata dei namespace degli attributi addebita lavoro di matching e scansione limitato

Cancellazione e fallimenti di budget preservano l'output precedente del decoder e lo stato di import confermato; i caller possono riprovare con l'input originale e i limiti normali

Fogli di stile esterni, regole media condizionali, pseudo classi di stato aggiuntive e radici di scoping esplicite, tabelle e layout CSS generale restano lavoro attivo

Fogli di stile del rich text nativo · Scambio nativo di dati modulo