content: normal | flow(name, page-policy?) | [ "string" | url(filename) | counter(name, counter-style?, page-policy?) | counters(name, "separator", counter-style?, page-policy?) | target-counter(url, counter, counter-style?) | target-counters(url, counter, "separator", counter-style?) | target-content(url) | leader("...") | string(ident, page-policy?) | content() | prince-base-url() | prince-script(ident, content*) | prince-glyph-index(number) | prince-fallback(url) [ , content+ ]? | element(name) ]+
The content property can be used to insert text and other content into the original document. The uses are vary wide-ranging and are treated in more depth in the Generated Content section.
The most simple use is to insert a literal string. A literal string can also be passed as an argument to the leader() function. It can also be referenced with the string() function, in which case it needs to be defined in the string-set property.
It can also be used to insert external content fetched from another resource: this can be done with the url() function, the target-content() function or the prince-base-url() function. It can also be done with the prince-fallback() function, which works just like the url() function, but also has the possibility of specifying a fallback content, in case the loading of the URL should fail.
The content to be inserted can also be fetched from other elements, or their attributes, with the element() and the attr() functions, or with the content() function. Also, any block-level element can be removed from the normal flow with the prince-flow property and can be inserted with the flow() function. See also the documentation for Taking elements from the document for more details.
The content property can also be used for different forms of counters with the counter() and counters(), target-counter() and target-counters() functions.
A special function is prince-glyph-index, which allows to choose a glyph from a font by the index of that glyph in the font. Note that this is very non-portable, as glyph indices are specific to individual font versions. But it is a possible escape hatch for people who need a specific glyph and don't have any other way of accessing it (by Unicode character or OpenType substitution).