cssutils is een Python-pakket te ontleden en te bouwen Cascading Style Sheets (CSS). Alleen DOM, geen rendering faciliteiten!
Gebaseerd op en deels de uitvoering van de volgende specificaties:
CSS 2.1
& Nbsp; Algemeen CSS-regels en eigenschappen worden hier gedefinieerd
CSS 2.1 Errata
& Nbsp; Een paar errata, vooral de definitie van CHARSET_SYM tokens
CSS3 Module: Syntax
& Nbsp; gebruikt in delen sinds cssutils 0.9.4. cssutils probeert de functies te gebruiken van CSS 2.1 en CSS 3, met een voorkeur voor CSS3, maar als dit is nog niet definitief sommige delen van CSS 2.1
MediaQueries
& Nbsp; MediaQueries zijn onderdeel van stylesheets.MediaList sinds v0.9.4, gebruikt inimport enmedia regels.
Namespaces
& Nbsp; Toegevoegd in v0.9.1, bijgewerkt om definitie in CSSOM in v0.9.4, bijgewerkt in 0.9.5 voor dev versie
Selectors
& Nbsp; De selector syntax hier gedefinieerd (en niet in CSS 2.1) moet parsable met cssutils (moet wel erg)
DOM Level 2 Style CSS
& Nbsp; DOM voor pakket css
DOM Level 2 Stijl Stylesheets
& Nbsp; DOM voor pakket stylesheets
CSSOM
& Nbsp; Een paar details (vooral de NamespaceRule DOM) is overgenomen uit hier. Plan is om uitvoering aan de spullen hier gedefinieerd, die is nieuwer, maar nog steeds geen REC dus misschien op elk moment veranderen bewegen ...
De cssutils tokenizer is een aangepaste uitvoering van CSS3 Module: Syntax (W3C Working Draft 13 augustus 2003), die zelf is gebaseerd op de CSS 2.1 tokenizer. Het probeert zo compatibel mogelijk te zijn, maar maakt gebruik van een aantal (behulpzaam) delen van de CSS 2.1 tokenizer.
Ik denk dat cssutils is noch CSS 2.1 noch CSS 3 compliant, maar probeert op zijn minst in staat zijn om zowel grammatica's, waaronder een aantal meer echte wereld gevallen ontleden (sommige CSS hacks zijn eigenlijk ontleed en series). Beide officiële grammatica's zijn nog niet definitief noch foutvrije maar nog steeds haalbaar. cssutils doel is niet om volledig compatibel met elke CSS-specificatie (de specificaties lijken te zijn in een constante stroom toch) maar cssutils moeten kunnen lezen en schrijven zoveel mogelijk CSS stylesheets "in het wild", terwijl op hetzelfde moment uit te voeren de officiële API's die goed gedocumenteerd zijn. . Enkele kleine uitbreidingen zijn ook aanwezig
Eisen
- Python
Reacties niet gevonden