Native zengin metin style sheet'leri
Native XHTML decoder, dahili style öğelerini zengin metin alanlarına ve FDF/XFDF import'larına uygular; gerçek hesaplanmış stilleri kaydedilen RV'de ve gömülü widget appearance'larında koruyarak
<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>
Style öğeleri XHTML ad-uzayını kullanır ve type'ı çıkarır veya text/css belirtir; media, eksik, boş veya all olmalıdır
Kurallar evrensel ve tür selector'larını, durum-duyarlı class ve ID adlarını, bileşik selector'ları, descendant, child, adjacent-sibling ve subsequent-sibling combinator'larını ve virgülle ayrılmış selector gruplarını destekler
Namespace selector'ları
Kurallar, universal ve tür selector'larını, büyük/küçük harfe duyarlı sınıf ve ID adlarını, bileşik selector'ları, descendant, child, adjacent-sibling ve subsequent-sibling combinator'larını ve virgülle ayrılmış selector gruplarını destekler
Öznitelik ve yapısal selector'lar
Öznitelik selector'ları, varlığı, eşitliği, boşlukla-ayrılmış kelimeleri, tire öneklerini, sıradan önekleri, sonekleri ve alt dizeleri destekler: [name], [name="value"], [name~="word"], [name|="en"], [name^="pre"], [name$="end"] ve [name*="part"]
Öznitelik değerleri, tırnaklı dizeleri veya CSS tanımlayıcıları ve onların kaçışlarını kabul eder; isteğe bağlı i bayrağı yalnızca ASCII harfleri katlar; s ve atlanmış bayrak büyük/küçük harfe duyarlı karşılaştırır
Niteliksiz öznitelikler ve [|name], ad-uzayı öneksiz öznitelikleri eşler; [*|name] ayrıca o yerel ada sahip önekli öznitelikleri eşler; ad-uzayı bildirimlerini dışlar
Kardeş combinator'ları, non-öğe node'ları atlar ve zincirli selector'lar üzerinden ata eşleşmesini korur
Yapısal sahte sınıflar :root, :empty, :first-child, :last-child, :only-child, :first-of-type, :last-of-type ve :only-of-type'ı içerir
:scope kök rich-text öğesini seçer ve bu decoder'ın ayrı bir çağıran-taraflı kapsam kökü olmadığı için :root ile eşleşir
Statik profil, :hover, :active, :focus, :focus-visible ve :focus-within değerlerini PDF appearance üretimi sırasında asla eşleşmeyen geçerli selector'lar olarak kabul eder. Olumsuzlamaları ve mantıksal ya da ilişkisel birleşimleri normal selector semantiğini korur; yani p:not(:hover) bir stil uygulayabilirken p:hover uygulayamaz
@supports selector(:hover) ve eşdeğer koşullu importlar selector dil bilgisi desteğini sınar ve true değerlendirir; bu, pointer, aktivasyon ya da klavye odağı durumu oluşturmaz. Bu altı pseudo class argüman almaz, bu yüzden :focus() gibi biçimler geçersiz kalır
Dört konumsal selector :nth-child(), :nth-last-child(), :nth-of-type() ve :nth-last-of-type(), odd, even, tam sayı konumları ve makine-integer aralıklarının ötesinde işaretli ondalık katsayılı An+B formülleri kabul eder; yapılandırılmış tarama bütçesi içinde
Tür konumları, hem öğe yerel adını hem ad-uzayı URI'sini karşılaştırır; :empty kuralı Selectors3'ü izler; böylece bir boşluk metin node'u bir öğeyi boş olmayan yaparken yorumlar ve processing instruction'lar yapmaz
:lang(), en yakın açık xml:lang veya lang değerini izler; tam bir değer veya tire önekiyle ASCII-duyarsız eşler ve açık boş bir değeri, kalıtımı durdurmak olarak ele alır
Mantıksal ve ilişkisel selector listeleri
:is() ve :where(), virgülle-ayrılmış karmaşık selector'ları — descendant ve sibling combinator'ları dâhil — kabul eder; desteklenmeyen dallar yok sayılır ve boş geçerli bir liste hiçbir öğeyi eşleştirmez
:is(), mevcut öğeyi eşleştirmeyen geçerli argümanlar dâhil en büyük argüman specificity'sini kullanır; :where() ise sıfır specificity katkıda bulunur
:not(), boş-olmayan bir karmaşık selector listesi kabul eder ve argümanlarından hiçbiri eşleşmediğinde eşleştirir; geçersiz bir argüman, eksiksiz selector listesini geçersiz kılar
:has(), göreli selector'ları mevcut öğeye sabitler ve gerçek children'ları, descendant'ları veya sonraki kardeşleri test eder; her göreli argüman, >, + veya ~ ile başlayabilir ve daha fazla desteklenen combinator'la devam edebilir
İç-ice :has() ve pseudo element'ler desteklenmez; geçersiz bir göreli argüman, eksiksiz :has() listesini geçersiz kılarken, çevrilen forgiving bir :is() veya :where() listesi diğer geçerli argümanlarını koruyabilir
:not() ve :has(), ID sayısı, class/öznitelik/pseudo sayısı ve tür sayısıyla karşılaştırılan en büyük geçerli argüman specificity'sini kullanır
:nth-child(An+B of selector-list) ve :nth-last-child(An+B of selector-list), yalnızca boş-olmayan karmaşık selector listesinin birleşimiyle eşleşen öğe kardeşleri sayar; hedefin kendisi o birleşime ait olmalıdır
Filtrelenmiş konumsal selector'lar, kendi pseudo-class specificity'lerini artı en büyük filtre specificity'sini katkıda bulunur; of keyword'ü, CSS identifier escape'lerini ve comment sınırlarını kabul ederken :nth-of-type() ve :nth-last-of-type() filtresiz gramerlerini korur
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 yorumları ve tanımlayıcı kaçışları, eşleştirmeden önce çözümlenir; bir-ile-altı onaltılık rakam, isteğe bağlı sondaki CSS boşluğu ve supplementary Unicode scalar'ları dâhil; sıfır, surrogate ve aralık-dışı onaltılık kaçışlar U+FFFD'ye çözülür
Bildirimler, önem, selector specificity ve belge kaynak sırasıyla kademelendirilir; ardından karşılık gelen önemlerine göre inline stiller gelir; öğeler, hesaplanan parent değerlerini mevcut property'ye özgü kurallar üzerinden devralır
Tüm dahili style öğeleri, metin tüketilmeden önce katılır; böylece hedefinden sonra görünen bir style öğesi yine uygulanır; stil metni görünür alan metnine dönüşmez
Bildirim profili, yazı tipi boyutunu, ağırlığını, stilini ve shorthand'ini, yapılandırılmış aile listelerini, rengi, metin süslemeyi, hizalamayı, satır yüksekliğini ve harf/kelime spacing'ini korur; uzunluk dönüşümü, parent metrik strut'ları ve verilen yazı tipi kabulü mevcut native zengin metin API'lerini izler
Kaydedilen RV, hesaplanan inline stilleri içerir ve orijinal style öğelerine bağlı değildir; tekrarlanan eşdeğer FDF/XFDF import'ları, yayın gerektiren bekleyen grafik değişikliği yokken tam taahhüt edilmiş baytları korur
Native Pascal tüketicileri, Windows dosya işleri ve orijinal V1 callback'ler ile Linux JSON/V1 callback'leri decoder'ı paylaşır; hiçbir public callback kayıt düzeni değişikliği gerekmez
MaxTotalCodeUnits, stylesheet taramasını, çıkarılan stil metnini ve toplam genişletilmiş bildirimleri sınırlar; MaxNodes, kural sayısını, selector adlarını, toplam öznitelik/pseudo koşullarını, fonksiyonlu selector listelerini ve eşleştirme/sıralama işini — göreli traversal ve filtreli kardeş taramaları dâhil — sınırlar; MaxDepth, XML toplamasını, selector parçalarını, iç-ice function'ları ve özyinelemeli eşleştirmeyi sınırlar
Cancellation ve sınır hataları, decoder'ın önceki çıktısını ve import transaction'ının taahhüt edilmiş belge durumunu korur; yeniden deneme, aynı orijinal options'ları ve bütçeleri kullanır
Geçersiz veya desteklenmeyen selector grupları bütünüyle yok sayılır; geçersiz bildirimler decoder'ın mevcut yok sayma davranışını korur ve desteklenmeyen media ve at-rule'lar atlanır
Adlandırılmış ad-uzayı önekleri ve ad-uzayı bildirimleri, harici style sheet'ler, koşullu media kuralları, pseudo element'ler, ek state ve scope pseudo class'ları, tablolar, görüntüler ve genel CSS layout aktif iş olarak kalır
Native form-data exchange'i · Linux zengin callback'leri · Windows form-data exchange'i · Zengin run spacing'i
Çağıranın sağladığı dış stylesheet'ler, kaynak URI çözümlemesi, media koşulları ve seçili stylesheet setleriyle bağlı ve özyinelemeli olarak import edilmiş CSS ekler
Native destek sorguları, desteklenen bildirim ve selector profiliyle @supports gruplarını ve supports() importlarını kabul eder; paylaşılan sınırlar ve cancellation kurtarmasıyla