%
% API Documentation for cssutils
% Module cssutils.css.cssstyledeclaration
%
% Generated by epydoc 3.0.1
% [Fri Feb 01 19:05:21 2008]
%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                          Module Description                           %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}|(}
\section{Module cssutils.css.cssstyledeclaration}

    \label{cssutils:css:cssstyledeclaration}

CSSStyleDeclaration implements DOM Level 2 CSS CSSStyleDeclaration and
extends CSS2Properties
\begin{description}
\item[{see}] \leavevmode 
\href{http://www.w3.org/TR/1998/REC-CSS2-19980512/syndata.html\#parsing-errors}{http://www.w3.org/TR/1998/REC-CSS2-19980512/syndata.html{\#}parsing-errors}

\end{description}


%___________________________________________________________________________

\hypertarget{unknown-properties}{}
\pdfbookmark[3]{Unknown properties}{unknown-properties}
\paragraph*{Unknown properties}
\label{unknown-properties}

User agents must ignore a declaration with an unknown property.
For example, if the style sheet is:
\begin{quote}{\ttfamily \raggedright \noindent
H1~{\{}~color:~red;~rotation:~70minutes~{\}}
}\end{quote}

the user agent will treat this as if the style sheet had been:
\begin{quote}{\ttfamily \raggedright \noindent
H1~{\{}~color:~red~{\}}
}\end{quote}

Cssutils gives a message about any unknown properties but
keeps any property (if syntactically correct).


%___________________________________________________________________________

\hypertarget{illegal-values}{}
\pdfbookmark[3]{Illegal values}{illegal-values}
\paragraph*{Illegal values}
\label{illegal-values}

User agents must ignore a declaration with an illegal value. For example:
\begin{quote}{\ttfamily \raggedright \noindent
IMG~{\{}~float:~left~{\}}~~~~~~~/*~correct~CSS2~*/~\\
IMG~{\{}~float:~left~here~{\}}~~/*~"here"~is~not~a~value~of~'float'~*/~\\
IMG~{\{}~background:~"red"~{\}}~/*~keywords~cannot~be~quoted~in~CSS2~*/~\\
IMG~{\{}~border-width:~3~{\}}~~~/*~a~unit~must~be~specified~for~length~values~*/
}\end{quote}

A CSS2 parser would honor the first rule and ignore the rest, as if the
style sheet had been:
\begin{quote}{\ttfamily \raggedright \noindent
IMG~{\{}~float:~left~{\}}~\\
IMG~{\{}~{\}}~\\
IMG~{\{}~{\}}~\\
IMG~{\{}~{\}}
}\end{quote}

Cssutils again will issue a message (WARNING in this case) about invalid
CSS2 property values.
\begin{description}
\item[{TODO:}] \leavevmode 
This interface is also used to provide a read-only access to the
computed values of an element. See also the ViewCSS interface.
\begin{itemize}
\item {} 
return computed values and not literal values

\item {} 
simplify unit pairs/triples/quadruples
2px 2px 2px 2px -{\textgreater} 2px for border/padding...

\item {} 
normalize compound properties like:
background: no-repeat left url()  {\#}fff
-{\textgreater} background: {\#}fff url() no-repeat left

\end{itemize}

\end{description}
\textbf{Version:} \$LastChangedRevision: 953 \$



\textbf{Date:} \$LastChangedDate: 2008-01-27 17:44:48 +0100 (So, 27 Jan 2008) \$



\textbf{Author:} \$LastChangedBy: cthedot \$




%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                           Class Description                           %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.property \textit{(module)}!cssutils.css.property.Property \textit{(class)}|(}
\subsection{Class Property}

    \label{cssutils:css:property:Property}
\begin{tabular}{cccccccc}
% Line for object, linespec=[False, False]
\multicolumn{2}{r}{\settowidth{\BCL}{object}\multirow{2}{\BCL}{object}}
&&
&&
  \\\cline{3-3}
  &&\multicolumn{1}{c|}{}
&&
&&
  \\
% Line for cssutils.util.Base, linespec=[False]
\multicolumn{4}{r}{\settowidth{\BCL}{cssutils.util.Base}\multirow{2}{\BCL}{cssutils.util.Base}}
&&
  \\\cline{5-5}
  &&&&\multicolumn{1}{c|}{}
&&
  \\
&&&&\multicolumn{2}{l}{\textbf{cssutils.css.property.Property}}
\end{tabular}


(cssutils) a CSS property in a StyleDeclaration of a CSSStyleRule


%___________________________________________________________________________

\hypertarget{properties}{}
\pdfbookmark[3]{Properties}{properties}
\paragraph*{Properties}
\label{properties}
\begin{description}
\item[{cssText}] \leavevmode 
a parsable textual representation of this property

\item[{name}] \leavevmode 
normalized name of the property, e.g. ``color'' when name is ``color''
(since 0.9.5)

\item[{literalname (since 0.9.5)}] \leavevmode 
original name of the property in the source CSS which is not normalized
e.g. ``COLor''

\item[{cssValue}] \leavevmode 
the relevant CSSValue instance for this property

\item[{value}] \leavevmode 
the string value of the property, same as cssValue.cssText

\item[{priority}] \leavevmode 
of the property (currently only u``important'' or None)

\item[{literalpriority}] \leavevmode 
original priority of the property in the source CSS which is not
normalized e.g. ``IMportant''

\item[{seqs}] \leavevmode 
combination of a list for seq of name, a CSSValue object, and
a list for seq of  priority (empty or {[}!important{]} currently)

\item[{valid}] \leavevmode 
if this Property is valid

\item[{wellformed}] \leavevmode 
if this Property is syntactically ok

\item[{DEPRECATED normalname (since 0.9.5)}] \leavevmode 
normalized name of the property, e.g. ``color'' when name is ``color''

\end{description}


%___________________________________________________________________________

\hypertarget{format}{}
\pdfbookmark[3]{Format}{format}
\paragraph*{Format}
\label{format}
\begin{quote}{\ttfamily \raggedright \noindent
property~=~name~\\
~~:~IDENT~S*~\\
~~;~\\
~\\
expr~=~value~\\
~~:~term~{[}~operator~term~{]}*~\\
~~;~\\
term~\\
~~:~unary{\_}operator?~\\
~~~~{[}~NUMBER~S*~|~PERCENTAGE~S*~|~LENGTH~S*~|~EMS~S*~|~EXS~S*~|~ANGLE~S*~|~\\
~~~~~~TIME~S*~|~FREQ~S*~|~function~{]}~\\
~~|~STRING~S*~|~IDENT~S*~|~URI~S*~|~hexcolor~\\
~~;~\\
function~\\
~~:~FUNCTION~S*~expr~')'~S*~\\
~~;~\\
/*~\\
~*~There~is~a~constraint~on~the~color~that~it~must~\\
~*~have~either~3~or~6~hex-digits~(i.e.,~{[}0-9a-fA-F{]})~\\
~*~after~the~"{\#}";~e.g.,~"{\#}000"~is~OK,~but~"{\#}abcd"~is~not.~\\
~*/~\\
hexcolor~\\
~~:~HASH~S*~\\
~~;~\\
~\\
prio~\\
~~:~IMPORTANT{\_}SYM~S*~\\
~~;
}\end{quote}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                Methods                                %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

  \subsubsection{Methods}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{\_\_init\_\_}(\textit{self}, \textit{name}={\tt None}, \textit{value}={\tt None}, \textit{priority}={\tt \texttt{u'}\texttt{}\texttt{'}}, \textit{\_mediaQuery}={\tt False})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

inits property
\begin{description}
\item[{name}] \leavevmode 
a property name string (will be normalized)

\item[{value}] \leavevmode 
a property value string

\item[{priority}] \leavevmode 
an optional priority string which currently must be u'',
u'!important' or u'important'

\item[{{\_}mediaQuery boolean}] \leavevmode 
if True value is optional as used by MediaQuery objects

\end{description}
\setlength{\parskip}{1ex}
      Overrides: object.\_\_init\_\_

    \end{boxedminipage}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{\_\_repr\_\_}(\textit{self})

\setlength{\parskip}{2ex}
    repr(x)

\setlength{\parskip}{1ex}
      Overrides: object.\_\_repr\_\_ 	extit{(inherited documentation)}

    \end{boxedminipage}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{\_\_str\_\_}(\textit{self})

\setlength{\parskip}{2ex}
    str(x)

\setlength{\parskip}{1ex}
      Overrides: object.\_\_str\_\_ 	extit{(inherited documentation)}

    \end{boxedminipage}


\large{\textbf{\textit{Inherited from object}}}

\begin{quote}
\_\_delattr\_\_(), \_\_getattribute\_\_(), \_\_hash\_\_(), \_\_new\_\_(), \_\_reduce\_\_(), \_\_reduce\_ex\_\_(), \_\_setattr\_\_()
\end{quote}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                              Properties                               %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

  \subsubsection{Properties}

    \vspace{-1cm}
\hspace{\varindent}\begin{longtable}{|p{\varnamewidth}|p{\vardescrwidth}|l}
\cline{1-2}
\cline{1-2} \centering \textbf{Name} & \centering \textbf{Description}& \\
\cline{1-2}
\endhead\cline{1-2}\multicolumn{3}{r}{\small\textit{continued on next page}}\\\endfoot\cline{1-2}
\endlastfoot\raggedright c\-s\-s\-T\-e\-x\-t\- & \raggedright A parsable textual representation.&\\
\cline{1-2}
\raggedright n\-a\-m\-e\- & \raggedright Name of this property&\\
\cline{1-2}
\raggedright l\-i\-t\-e\-r\-a\-l\-n\-a\-m\-e\- & \raggedright Readonly literal (not normalized) name of this property&\\
\cline{1-2}
\raggedright c\-s\-s\-V\-a\-l\-u\-e\- & \raggedright (cssutils) CSSValue object of this property&\\
\cline{1-2}
\raggedright v\-a\-l\-u\-e\- & \raggedright The textual value of this Properties cssValue.&\\
\cline{1-2}
\raggedright p\-r\-i\-o\-r\-i\-t\-y\- & \raggedright (cssutils) Priority of this property&\\
\cline{1-2}
\raggedright l\-i\-t\-e\-r\-a\-l\-p\-r\-i\-o\-r\-i\-t\-y\- & \raggedright Readonly literal (not normalized) priority of this property&\\
\cline{1-2}
\raggedright n\-o\-r\-m\-a\-l\-n\-a\-m\-e\- & \raggedright DEPRECATED since 0.9.5, use name instead&\\
\cline{1-2}
\multicolumn{2}{|l|}{\textit{Inherited from object}}\\
\multicolumn{2}{|p{\varwidth}|}{\raggedright \_\_class\_\_}\\
\cline{1-2}
\end{longtable}

    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.property \textit{(module)}!cssutils.css.property.Property \textit{(class)}|)}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                           Class Description                           %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}|(}
\subsection{Class CSSStyleDeclaration}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration}
\begin{tabular}{cccccccc}
% Line for object, linespec=[False, False]
\multicolumn{2}{r}{\settowidth{\BCL}{object}\multirow{2}{\BCL}{object}}
&&
&&
  \\\cline{3-3}
  &&\multicolumn{1}{c|}{}
&&
&&
  \\
% Line for cssutils.css.cssproperties.CSS2Properties, linespec=[False]
\multicolumn{4}{r}{\settowidth{\BCL}{cssutils.css.cssproperties.CSS2Properties}\multirow{2}{\BCL}{cssutils.css.cssproperties.CSS2Properties}}
&&
  \\\cline{5-5}
  &&&&\multicolumn{1}{c|}{}
&&
  \\
% Line for object, linespec=[False, True]
\multicolumn{2}{r}{\settowidth{\BCL}{object}\multirow{2}{\BCL}{object}}
&&
&&\multicolumn{1}{|c}{}
  \\\cline{3-3}
  &&\multicolumn{1}{c|}{}
&&
&\multicolumn{1}{|c}{}&
  \\
% Line for cssutils.util.Base, linespec=[True]
\multicolumn{4}{r}{\settowidth{\BCL}{cssutils.util.Base}\multirow{2}{\BCL}{cssutils.util.Base}}
&&\multicolumn{1}{|c}{}
  \\\cline{5-5}
  &&&&\multicolumn{1}{c|}{}
&\multicolumn{1}{|c}{}&
  \\
&&&&\multicolumn{2}{l}{\textbf{cssutils.css.cssstyledeclaration.CSSStyleDeclaration}}
\end{tabular}


The CSSStyleDeclaration class represents a single CSS declaration
block. This class may be used to determine the style properties
currently set in a block or to set style properties explicitly
within the block.

While an implementation may not recognize all CSS properties within
a CSS declaration block, it is expected to provide access to all
specified properties in the style sheet through the
CSSStyleDeclaration interface.
Furthermore, implementations that support a specific level of CSS
should correctly handle CSS shorthand properties for that level. For
a further discussion of shorthand properties, see the CSS2Properties
interface.

Additionally the CSS2Properties interface is implemented.


%___________________________________________________________________________

\hypertarget{properties}{}
\pdfbookmark[3]{Properties}{properties}
\paragraph*{Properties}
\label{properties}
\begin{description}
\item[{cssText}] \leavevmode 
The parsable textual representation of the declaration block
(excluding the surrounding curly braces). Setting this attribute
will result in the parsing of the new value and resetting of the
properties in the declaration block. It also allows the insertion
of additional properties and their values into the block.

\item[{length: of type unsigned long, readonly}] \leavevmode 
The number of properties that have been explicitly set in this
declaration block. The range of valid indices is 0 to length-1
inclusive.

\item[{parentRule: of type CSSRule, readonly}] \leavevmode 
The CSS rule that contains this declaration block or None if this
CSSStyleDeclaration is not attached to a CSSRule.

\item[{seq: a list (cssutils)}] \leavevmode 
All parts of this style declaration including CSSComments

\item[{valid}] \leavevmode 
if this declaration is valid, currently to CSS 2.1 (?)

\item[{wellformed}] \leavevmode 
if this declaration is syntactically ok

\item[{{\$}css2propertyname}] \leavevmode 
All properties defined in the CSS2Properties class are available
as direct properties of CSSStyleDeclaration with their respective
DOM name, so e.g. \texttt{fontStyle} for property 'font-style'.

These may be used as:
\begin{quote}{\ttfamily \raggedright \noindent
>{}>{}>~style~=~CSSStyleDeclaration(cssText='color:~red')~\\
>{}>{}>~style.color~=~'green'~\\
>{}>{}>~print~style.color~\\
green~\\
>{}>{}>~del~style.color~\\
>{}>{}>~print~style.color~{\#}~print~empty~string
}\end{quote}

\end{description}


%___________________________________________________________________________

\hypertarget{format}{}
\pdfbookmark[3]{Format}{format}
\paragraph*{Format}
\label{format}

{[}Property: Value Priority?;{]}* {[}Property: Value Priority?{]}?

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                Methods                                %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

  \subsubsection{Methods}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{\_\_init\_\_}(\textit{self}, \textit{cssText}={\tt \texttt{u'}\texttt{}\texttt{'}}, \textit{parentRule}={\tt None}, \textit{readonly}={\tt False})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}
\begin{description}
\item[{cssText}] \leavevmode 
Shortcut, sets CSSStyleDeclaration.cssText

\item[{parentRule}] \leavevmode 
The CSS rule that contains this declaration block or
None if this CSSStyleDeclaration is not attached to a CSSRule.

\item[{readonly}] \leavevmode 
defaults to False

\end{description}
\setlength{\parskip}{1ex}
      Overrides: object.\_\_init\_\_

    \end{boxedminipage}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration:__contains__}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration.\_\_contains\_\_ \textit{(method)}}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{\_\_contains\_\_}(\textit{self}, \textit{nameOrProperty})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

checks if a property (or a property with given name is in style
\begin{description}
\item[{name}] \leavevmode 
a string or Property, uses normalized name and not literalname

\end{description}
\setlength{\parskip}{1ex}
    \end{boxedminipage}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration:__iter__}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration.\_\_iter\_\_ \textit{(method)}}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{\_\_iter\_\_}(\textit{self})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

iterator of set Property objects with different normalized names.
\setlength{\parskip}{1ex}
    \end{boxedminipage}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{\_\_setattr\_\_}(\textit{self}, \textit{n}, \textit{v})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

Prevent setting of unknown properties on CSSStyleDeclaration
which would not work anyway. For these
\texttt{CSSStyleDeclaration.setProperty} MUST be called explicitly!
\begin{description}
\item[{TODO:}] \leavevmode 
implementation of known is not really nice, any alternative?

\end{description}
\setlength{\parskip}{1ex}
      Overrides: object.\_\_setattr\_\_

    \end{boxedminipage}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration:getCssText}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration.getCssText \textit{(method)}}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{getCssText}(\textit{self}, \textit{separator}={\tt None})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

returns serialized property cssText, each property separated by
given \texttt{separator} which may e.g. be u'' to be able to use
cssText directly in an HTML style attribute. ``;'' is always part of
each property (except the last one) and can \textbf{not} be set with
separator!
\setlength{\parskip}{1ex}
    \end{boxedminipage}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration:getProperties}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration.getProperties \textit{(method)}}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{getProperties}(\textit{self}, \textit{name}={\tt None}, \textit{all}={\tt False})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

Returns a list of Property objects set in this declaration.
\begin{description}
\item[{name}] \leavevmode 
optional name of properties which are requested (a filter).
Only properties with this \textbf{always normalized} name are returned.

\item[{all=False}] \leavevmode 
if False (DEFAULT) only the effective properties (the ones set
last) are returned. If name is given a list with only one property
is returned.

if True all properties including properties set multiple times with
different values or priorities for different UAs are returned.
The order of the properties is fully kept as in the original
stylesheet.

\end{description}
\setlength{\parskip}{1ex}
    \end{boxedminipage}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration:getProperty}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration.getProperty \textit{(method)}}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{getProperty}(\textit{self}, \textit{name}, \textit{normalize}={\tt True})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

Returns the effective Property object.
\begin{description}
\item[{name}] \leavevmode 
of the CSS property, always lowercase (even if not normalized)

\item[{normalize}] \leavevmode 
if True (DEFAULT) name will be normalized (lowercase, no simple
escapes) so ``color'', ``COLOR'' or ``Color'' will all be equivalent

If False may return \textbf{NOT} the effective value but the effective
for the unnormalized name.

\end{description}
\setlength{\parskip}{1ex}
    \end{boxedminipage}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration:getPropertyCSSValue}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration.getPropertyCSSValue \textit{(method)}}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{getPropertyCSSValue}(\textit{self}, \textit{name}, \textit{normalize}={\tt True})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

Returns CSSValue, the value of the effective property if it has been
explicitly set for this declaration block.
\begin{description}
\item[{name}] \leavevmode 
of the CSS property, always lowercase (even if not normalized)

\item[{normalize}] \leavevmode 
if True (DEFAULT) name will be normalized (lowercase, no simple
escapes) so ``color'', ``COLOR'' or ``Color'' will all be equivalent

If False may return \textbf{NOT} the effective value but the effective
for the unnormalized name.

\end{description}

(DOM)
Used to retrieve the object representation of the value of a CSS
property if it has been explicitly set within this declaration
block. Returns None if the property has not been set.

(This method returns None if the property is a shorthand
property. Shorthand property values can only be accessed and
modified as strings, using the getPropertyValue and setProperty
methods.)

\textbf{cssutils currently always returns a CSSValue if the property is
set.}
\begin{description}
\item[{for more on shorthand properties see}] \leavevmode 
\href{http://www.dustindiaz.com/css-shorthand/}{http://www.dustindiaz.com/css-shorthand/}

\end{description}
\setlength{\parskip}{1ex}
    \end{boxedminipage}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration:getPropertyValue}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration.getPropertyValue \textit{(method)}}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{getPropertyValue}(\textit{self}, \textit{name}, \textit{normalize}={\tt True})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

Returns the value of the effective property if it has been explicitly
set for this declaration block. Returns the empty string if the
property has not been set.
\begin{description}
\item[{name}] \leavevmode 
of the CSS property, always lowercase (even if not normalized)

\item[{normalize}] \leavevmode 
if True (DEFAULT) name will be normalized (lowercase, no simple
escapes) so ``color'', ``COLOR'' or ``Color'' will all be equivalent

If False may return \textbf{NOT} the effective value but the effective
for the unnormalized name.

\end{description}
\setlength{\parskip}{1ex}
    \end{boxedminipage}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration:getPropertyPriority}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration.getPropertyPriority \textit{(method)}}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{getPropertyPriority}(\textit{self}, \textit{name}, \textit{normalize}={\tt True})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

Returns the priority of the effective CSS property (e.g. the
``important'' qualifier) if the property has been explicitly set in
this declaration block. The empty string if none exists.
\begin{description}
\item[{name}] \leavevmode 
of the CSS property, always lowercase (even if not normalized)

\item[{normalize}] \leavevmode 
if True (DEFAULT) name will be normalized (lowercase, no simple
escapes) so ``color'', ``COLOR'' or ``Color'' will all be equivalent

If False may return \textbf{NOT} the effective value but the effective
for the unnormalized name.

\end{description}
\setlength{\parskip}{1ex}
    \end{boxedminipage}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration:removeProperty}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration.removeProperty \textit{(method)}}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{removeProperty}(\textit{self}, \textit{name}, \textit{normalize}={\tt True})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

(DOM)
Used to remove a CSS property if it has been explicitly set within
this declaration block.

Returns the value of the property if it has been explicitly set for
this declaration block. Returns the empty string if the property
has not been set or the property name does not correspond to a
known CSS property
\begin{description}
\item[{name}] \leavevmode 
of the CSS property

\item[{normalize}] \leavevmode 
if True (DEFAULT) name will be normalized (lowercase, no simple
escapes) so ``color'', ``COLOR'' or ``Color'' will all be equivalent.
The effective Property value is returned and \emph{all} Properties
with \texttt{Property.name == name} are removed.

If False may return \textbf{NOT} the effective value but the effective
for the unnormalized \texttt{name} only. Also only the Properties with
the literal name \texttt{name} are removed.

\end{description}

raises DOMException
\begin{itemize}
\item {} 
NO{\_}MODIFICATION{\_}ALLOWED{\_}ERR: (self)
Raised if this declaration is readonly or the property is
readonly.

\end{itemize}
\setlength{\parskip}{1ex}
    \end{boxedminipage}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration:setProperty}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration.setProperty \textit{(method)}}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{setProperty}(\textit{self}, \textit{name}, \textit{value}={\tt None}, \textit{priority}={\tt \texttt{u'}\texttt{}\texttt{'}}, \textit{normalize}={\tt True})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

(DOM)
Used to set a property value and priority within this declaration
block.
\begin{description}
\item[{name}] \leavevmode 
of the CSS property to set (in W3C DOM the parameter is called
``propertyName''), always lowercase (even if not normalized)

If a property with this name is present it will be reset

cssutils also allowed name to be a Property object, all other
parameter are ignored in this case

\item[{value}] \leavevmode 
the new value of the property, omit if name is already a Property

\item[{priority}] \leavevmode 
the optional priority of the property (e.g. ``important'')

\item[{normalize}] \leavevmode 
if True (DEFAULT) name will be normalized (lowercase, no simple
escapes) so ``color'', ``COLOR'' or ``Color'' will all be equivalent

\end{description}

DOMException on setting
\begin{itemize}
\item {} 
SYNTAX{\_}ERR: (self)
Raised if the specified value has a syntax error and is
unparsable.

\item {} 
NO{\_}MODIFICATION{\_}ALLOWED{\_}ERR: (self)
Raised if this declaration is readonly or the property is
readonly.

\end{itemize}
\setlength{\parskip}{1ex}
    \end{boxedminipage}

    \label{cssutils:css:cssstyledeclaration:CSSStyleDeclaration:item}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration.item \textit{(method)}}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{item}(\textit{self}, \textit{index})

    \vspace{-1.5ex}

    \rule{\textwidth}{0.5\fboxrule}
\setlength{\parskip}{2ex}

(DOM)
Used to retrieve the properties that have been explicitly set in
this declaration block. The order of the properties retrieved using
this method does not have to be the order in which they were set.
This method can be used to iterate over all properties in this
declaration block.
\begin{description}
\item[{index}] \leavevmode 
of the property to retrieve, negative values behave like
negative indexes on Python lists, so -1 is the last element

\end{description}

returns the name of the property at this ordinal position. The
empty string if no property exists at this position.

ATTENTION:
Only properties with a different name are counted. If two
properties with the same name are present in this declaration
only the effective one is included.

\texttt{item()} and \texttt{length} work on the same set here.
\setlength{\parskip}{1ex}
    \end{boxedminipage}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{\_\_repr\_\_}(\textit{self})

\setlength{\parskip}{2ex}
    repr(x)

\setlength{\parskip}{1ex}
      Overrides: object.\_\_repr\_\_ 	extit{(inherited documentation)}

    \end{boxedminipage}

    \vspace{0.5ex}

\hspace{.8\funcindent}\begin{boxedminipage}{\funcwidth}

    \raggedright \textbf{\_\_str\_\_}(\textit{self})

\setlength{\parskip}{2ex}
    str(x)

\setlength{\parskip}{1ex}
      Overrides: object.\_\_str\_\_ 	extit{(inherited documentation)}

    \end{boxedminipage}


\large{\textbf{\textit{Inherited from object}}}

\begin{quote}
\_\_delattr\_\_(), \_\_getattribute\_\_(), \_\_hash\_\_(), \_\_new\_\_(), \_\_reduce\_\_(), \_\_reduce\_ex\_\_()
\end{quote}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                              Properties                               %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

  \subsubsection{Properties}

    \vspace{-1cm}
\hspace{\varindent}\begin{longtable}{|p{\varnamewidth}|p{\vardescrwidth}|l}
\cline{1-2}
\cline{1-2} \centering \textbf{Name} & \centering \textbf{Description}& \\
\cline{1-2}
\endhead\cline{1-2}\multicolumn{3}{r}{\small\textit{continued on next page}}\\\endfoot\cline{1-2}
\endlastfoot\raggedright c\-s\-s\-T\-e\-x\-t\- & \raggedright (DOM) A parsable textual representation of the declaration        block excluding the surrounding curly braces.&\\
\cline{1-2}
\raggedright p\-a\-r\-e\-n\-t\-R\-u\-l\-e\- & \raggedright (DOM) The CSS rule that contains this declaration block or        None if this CSSStyleDeclaration is not attached to a CSSRule.&\\
\cline{1-2}
\raggedright l\-e\-n\-g\-t\-h\- & \raggedright (DOM) The number of distinct properties that have been explicitly        in this declaration block. The range of valid indices is 0 to        length-1 inclusive. These are properties with a different \texttt{name}        only. \texttt{item()} and \texttt{length} work on the same set here.&\\
\cline{1-2}
\multicolumn{2}{|l|}{\textit{Inherited from cssutils.css.cssproperties.CSS2Properties \textit{(Section \ref{cssutils:css:cssproperties:CSS2Properties})}}}\\
\multicolumn{2}{|p{\varwidth}|}{\raggedright azimuth, background, backgroundAttachment, backgroundColor, backgroundImage, backgroundPosition, backgroundRepeat, border, borderBottom, borderBottomColor, borderBottomStyle, borderBottomWidth, borderCollapse, borderColor, borderLeft, borderLeftColor, borderLeftStyle, borderRight, borderRightColor, borderRightStyle, borderRightWidth, borderSpacing, borderStyle, borderTop, borderTopColor, borderTopStyle, borderTopWidth, borderWidth, bottom, captionSide, clear, clip, color, content, counterIncrement, counterReset, cue, cueAfter, cueBefore, cursor, direction, display, elevation, emptyCells, float, font, fontFamily, fontSize, fontStyle, fontVariant, fontWeight, height, left, letterSpacing, lineHeight, listStyle, listStyleImage, listStylePosition, listStyleType, margin, marginBottom, marginLeft, marginRight, marginTop, maxHeight, maxWidth, minHeight, minWidth, orphans, outline, outlineColor, outlineStyle, outlineWidth, overflow, padding, paddingBottom, paddingLeft, paddingRight, paddingTop, pageBreakAfter, pageBreakBefore, pageBreakInside, pause, pauseAfter, pauseBefore, pitch, pitchRange, playDuring, position, quotes, richness, right, speak, speakHeader, speakNumeral, speakPunctuation, speechRate, stress, tableLayout, textAlign, textDecoration, textIndent, textTransform, top, unicodeBidi, verticalAlign, visibility, voiceFamily, volume, whiteSpace, widows, width, wordSpacing, zIndex}\\
\cline{1-2}
\multicolumn{2}{|l|}{\textit{Inherited from object}}\\
\multicolumn{2}{|p{\varwidth}|}{\raggedright \_\_class\_\_}\\
\cline{1-2}
\end{longtable}

    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}!cssutils.css.cssstyledeclaration.CSSStyleDeclaration \textit{(class)}|)}
    \index{cssutils \textit{(package)}!cssutils.css \textit{(package)}!cssutils.css.cssstyledeclaration \textit{(module)}|)}
