| | | * attr() | open-quote | close-quote | no-open-quote | * no-close-quote ]+ | inherit * Initial: normal * Applies to: :before and :after pseudo-elements * Inherited: no * Percentages: N/A * Media: all * Computed value: for URI values, the absolute URI; for attr() * values, the resulting string; otherwise as specified * * This property is used with the :before and :after pseudo-elements * to generate content in a document. Values have the following * meanings: * * normal * The pseudo-element is not generated. * * Text content (see the section on strings). * * The value is a URI that designates an external resource. If a * user agent cannot support the resource because of the media * types it supports, it must ignore the resource. * * Counters may be specified with two different functions: * 'counter()' or 'counters()'. The former has two forms: * 'counter(name)' or 'counter(name, style)'. The generated text is * the value of the named counter at this point in the formatting * structure; it is formatted in the indicated style ('decimal' by * default). The latter function also has two forms: * 'counters(name, string)' or 'counters(name, string, style)'. The * generated text is the value of all counters with the given name * at this point in the formatting structure, separated by the * specified string. The counters are rendered in the indicated * style ('decimal' by default). See the section on automatic * counters and numbering for more information. * open-quote and close-quote * These values are replaced by the appropriate string from the * 'quotes' property. * no-open-quote and no-close-quote * Same as 'none', but increments (decrements) the level of nesting * for quotes. * attr(X) * This function returns as a string the value of attribute X for * the subject of the selector. The string is not parsed by the CSS * processor. If the subject of the selector doesn't have an * attribute X, an empty string is returned. The case-sensitivity * of attribute names depends on the document language. Note. In * CSS 2.1, it is not possible to refer to attribute values for * other elements than the subject of the selector. */ class CSSContent extends CSSPropertyHandler { function CSSContent() { $this->CSSPropertyHandler(false, false); } function &default_value() { $data =& new ValueContent(); return $data; } // CSS 2.1 p 12.2: // Value: [ | | | attr(X) | open-quote | close-quote | no-open-quote | no-close-quote ]+ | inherit // // TODO: process values other than // function &parse($value) { if ($value == 'inherit') { return CSS_PROPERTY_INHERIT; }; $value_obj =& ValueContent::parse($value); return $value_obj; } function get_property_code() { return CSS_CONTENT; } function get_property_name() { return 'content'; } } CSS::register_css_property(new CSSContent); ?>