Nativa rich-text-stilmallar

Den nativa XHTML-avkodaren tillämpar interna stilelement på rich-text-fält och FDF/XFDF-importer och bevarar faktiska beräknade stilar i sparad RV och inbäddade widgetutseenden

<body xmlns="http://www.w3.org/1999/xhtml">
  <style>
    .notice { color: #204080; font-size: 14pt }
    p > span.urgent { font-weight: bold !important }
  </style>
  <p class="notice">Review <span class="urgent">today</span></p>
</body>

Stilelement använder XHTML-namnområdet och utelämnar antingen type eller specificerar text/css; media måste vara frånvarande, tom eller all

Regler stöder universiella och typselektorer, skriftkänsliga class- och ID-namn, sammansatta selektorer, ättling-, barn-, intilliggande-syskon- och efterföljande-syskonkombinatorer samt kommaseparerade selectorgrupper

Namnrymdsselektorer

Regler stödjer universala och typselektorer, skiftlägeskänsliga klass- och ID-namn, sammansatta selektorer, ättling-, barn-, intilliggande-syskon- och efterföljande-syskon-kombinatorer samt kommaseparerade selektorgrupper

Attribut- och strukturella selektorer

Attributselektorer stödjer närvaro, likhet, whitespace-separerade ord, bindestrecksprefix, ordinära prefix, suffix och delsträngar: [name], [name="value"], [name~="word"], [name|="en"], [name^="pre"], [name$="end"] och [name*="part"]

Attributvärden accepterar citerade strängar eller CSS-identifierare och deras escapes; den valfria i-flaggan vikar endast ASCII-bokstäver, medan s och en utelämnad flagga jämför skiftlägeskänsligt

Oprefixade attribut och [|name] matchar attribut utan namnområdesprefix; [*|name] matchar också prefixade attribut med det lokala namnet, exklusive namnområdesdeklarationer

Syskonkombinatorer hoppar över icke-elementnoder och bevarar förfadermatchning genom kedjade selektorer

Strukturella pseudo-klasser inkluderar :root, :empty, :first-child, :last-child, :only-child, :first-of-type, :last-of-type och :only-of-type

:scope väljer rot-rich-text-elementet och matchar :root eftersom denna avkodare saknar en separat anroparspecificerad omfångsrot

Den statiska profilen accepterar :hover, :active, :focus, :focus-visible och :focus-within som giltiga selektorer som aldrig matchar under PDF-generering av utseenden. Deras negationer och logiska eller relationella kombinationer behåller normal selectorsemantik, så p:not(:hover) kan tillämpa en stil medan p:hover inte kan

@supports selector(:hover) och likvärdiga villkorade imports testar selectorgrammatikstöd och utvärderas till true; detta skapar inget pekare-, aktiverings- eller tangentbordsfokustillstånd. Dessa sex pseudoklasser tar inga argument, så former som :focus() förblir ogiltiga

De fyra positionella selektorerna :nth-child(), :nth-last-child(), :nth-of-type() och :nth-last-of-type() accepterar odd, even, heltalspositioner och An+B-formler med signerade decimalkoefficienter bortom maskinheltalsintervall, inom den konfigurerade skannbudgeten

Typpositioner jämför både elementets lokala namn och namnområdes-URI; :empty-regeln följer Selectors3, så en whitespace-textnod gör ett element icke-tomt medan kommentarer och bearbetningsinstruktioner inte gör det

:lang() följer det närmaste explicita xml:lang- eller lang-värdet, matchar ASCII-okänsligt per exakt värde eller bindestrecksprefix och behandlar ett explicit tomt värde som arvsstopp

Logiska och relationella selectorlistor

:is() och :where() accepterar kommaseparerade komplexa selektorer, inklusive ättling- och syskonkombinatorer; grenar utan stöd ignoreras och en tom giltig lista matchar inget element

:is() använder den största argumentspecifiteten, inklusive giltiga argument som inte matchar det aktuella elementet; :where() bidrar med noll specifitet

:not() accepterar en sammansatt selektor, inklusive stödda attribut och pseudo-klasser; dess argument bidrar med specificitet, och kapslad negation konsumerar det konfigurerade selektordjupet

:has() förankrar relativa selektorer vid det aktuella elementet och testar faktiska barn, ättlingar eller efterföljande syskon; varje relativt argument kan inledas med >, + eller ~, följt av ytterligare stödda kombinatorer

Nästlad :has() och pseudoelement stöds inte; ett ogiltigt relativt argument ogiltigförklarar den fullständiga :has()-listan, medan en omgivande förlåtande :is()- eller :where()-lista kan behålla sina andra giltiga argument

:not() och :has() använder den största giltiga argumentspecifiteten, jämförd efter ID-antal, class-/attribut-/pseudoclass-antal och typantal

:nth-child(An+B of selector-list) och :nth-last-child(An+B of selector-list) räknar bara elementsyskon som matchar unionen av den icke-tomma komplexa selectorlistan; målet måste självt tillhöra den unionen

Filtrerade positionsselektorer bidrar med sin egen pseudoclass-specifitet plus den största filterspecifiteten; nyckelordet of accepterar CSS-identifierareskaper och kommentarsgränser, medan :nth-of-type() och :nth-last-of-type() behåller sin ofiltrerade grammatik

p:has(> span.urgent) { color: red }
span:is(.notice, p > .urgent) { font-weight: bold }
span:nth-child(2 of .included, [data-status="ready"]) { color: blue }

CSS-kommentarer och identifierareskapser tolkas före matchning, inklusive en-till-sex hexadecimala siffror, valfri avslutande CSS-whitespace och supplerande Unicode-skaliärer; noll-, surrogat- och utanför-intervallet-hexadecimala escapes löses till U+FFFD

Deklarationer kaskaderar per vikt, selektorspecificitet och dokumentskällordning, följt av inline-stilar vid sin motsvarande vikt; element ärver beräknade föräldervärden genom de befintliga egenskapsspecifika reglerna

Alla interna stilelement deltar innan text konsumeras, så ett stilelement som visas efter sitt mål tillämpas fortfarande; stilstext blir inte synlig fälttext

Deklarationsprofilen behåller typsnittsstorlek, vikt, stil och kortform, konfigurerade familjelistor, färg, textdekoration, justering, radhöjd och bokstavs-/ordmellanslag; längdkonvertering, föräldrametriska stöden och tillhandahållen typsnittsupptagning följer de befintliga nativa rich-text-API:erna

Sparad RV innehåller beräknade inline-stilar och beror inte på de ursprungliga stilelementen; upprepade ekvivalenta FDF/XFDF-importer behåller exakta sparade byte när inga väntande grafändringar kräver publicering

Nativa Pascal-konsumenter, Windows-filjobb och ursprungliga V1-återanrop samt Linux JSON/V1-återanrop delar avkodaren; inga publika återanropspostlayoutändringar krävs

MaxTotalCodeUnits begränsar stilmallsskanning, extraherad stilstext och samlade utvidgade deklarationer; MaxNodes begränsar regelantal, selektornamn, samlade attribut-/pseudo-villkor, negationerade regler och matchnings-/sorteringsarbete; MaxDepth begränsar XML-samling, selektordelar och kapslad negation

Avbrotts- och gränsfel behåller avkodarens tidigare utdata och importtransaktionens sparade dokumenttillstånd; försök igen använder samma ursprungliga alternativ och budgetar

Ogiltiga eller stödj-icke selektorgrupper ignoreras som helhet, ogiltiga deklarationer behåller avkodarens befintliga ignorera-beteende, och stödj-icke media och at-regler hoppas över

Namngivna namnområdesprefix och namnområdesdeklarationer, externa stilmallar, villkorliga medieregler, pseudo-element, allmänna CSS4-funktionella selektorer som is/where/has och nth-child of-selektorlistor, tabeller, bilder och allmän CSS-layout förblir aktivt arbete

Nativ formdatautbyte · Linux rich-återanrop · Windows-formulärdatautbyte · Rich-sekvensmellanrum

Anropartillhandahållna externa stylesheets lägger till länkad och rekursivt importerad CSS med resurs-URI-lösning, mediavillkor och valda stylesheet-uppsättningar

Nativa stödfrågor antar @supports-grupper och supports()-imports med den stödda deklarations- och selectorprofilen, med delade gränser och annulleringsåterhämtning