1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141
|
API Reference
=============
Parsing
-------
tinycss2 is “low-level” in that it doesn’t parse all of CSS: it doesn’t know
about the syntax of any specific properties or at-rules. Instead, it provides
a set of functions that can be composed to support exactly the parts of CSS
you’re interested in, including new or non-standard rules or properties,
without modifying tinycss2 or having a complex hook/plugin system.
In many cases, parts of the parsed values (such as the
:attr:`~tinycss2.ast.AtRule.content` of a :class:`~tinycss2.ast.AtRule`) is
given as :term:`component values` that can be parsed further with other
functions.
.. module:: tinycss2
.. autofunction:: parse_stylesheet_bytes
.. autofunction:: parse_stylesheet
.. autofunction:: parse_rule_list
.. autofunction:: parse_one_rule
.. autofunction:: parse_blocks_contents
.. autofunction:: parse_declaration_list
.. autofunction:: parse_one_declaration
.. autofunction:: parse_component_value_list
.. autofunction:: parse_one_component_value
Serialization
-------------
In addition to each node’s a :meth:`~tinycss2.ast.Node.serialize` method, some
serialization-related functions are available:
.. autofunction:: serialize
.. autofunction:: serialize_identifier
Color Level 3
-------------
.. module:: tinycss2.color3
.. autofunction:: parse_color
.. autoclass:: RGBA
Color Level 4
-------------
.. module:: tinycss2.color4
.. autofunction:: parse_color
.. autoclass:: Color
:members:
.. autodata:: COLOR_SPACES
.. autodata:: D50
.. autodata:: D65
Color Level 5
-------------
.. module:: tinycss2.color5
.. autofunction:: parse_color
.. autoclass:: Color
:show-inheritance:
.. autodata:: COLOR_SPACES
.. autodata:: D50
.. autodata:: D65
<An+B>
------
.. module:: tinycss2.nth
.. autofunction:: parse_nth
AST nodes
---------
.. module:: tinycss2.ast
Various parsing functions return a **node** or a list of nodes. Some types of
nodes contain nested nodes which may in turn contain more nodes, forming
together an **abstract syntax tree**.
Although you typically don’t need to import it, the :mod:`tinycss2.ast` module
defines a class for every type of node.
.. autoclass:: Node()
.. autoclass:: QualifiedRule()
.. autoclass:: AtRule()
.. autoclass:: Declaration()
.. autoclass:: ParseError()
.. autoclass:: Comment()
.. autoclass:: WhitespaceToken()
.. autoclass:: LiteralToken()
.. autoclass:: IdentToken()
.. autoclass:: AtKeywordToken()
.. autoclass:: HashToken()
.. autoclass:: StringToken()
.. autoclass:: URLToken()
.. autoclass:: UnicodeRangeToken()
.. autoclass:: NumberToken()
.. autoclass:: PercentageToken()
.. autoclass:: DimensionToken()
.. autoclass:: ParenthesesBlock()
.. autoclass:: SquareBracketsBlock()
.. autoclass:: CurlyBracketsBlock()
.. autoclass:: FunctionBlock()
Glossary
--------
.. currentmodule:: tinycss2.ast
.. glossary::
component value
component values
A :class:`ParseError`,
:class:`WhitespaceToken`,
:class:`LiteralToken`,
:class:`IdentToken`,
:class:`AtKeywordToken`,
:class:`HashToken`,
:class:`StringToken`,
:class:`URLToken`,
:class:`NumberToken`,
:class:`PercentageToken`,
:class:`DimensionToken`,
:class:`UnicodeRangeToken`,
:class:`ParenthesesBlock`,
:class:`SquareBracketsBlock`,
:class:`CurlyBracketsBlock`,
:class:`FunctionBlock`,
or :class:`Comment`
object.
|