XSL-FO Properties
The finished document shown in Figure 14-3 is quite spartan. It
simply breaks the original XML document into a few separate
paragraphs. After quite a lot of work, it still hasn’t reached the
polish that was achieved much more simply with CSS (back in the last
chapter in Example 13-2 and
Figure 13-1). Adding the
sparkle of different fonts, bold headlines, bulleted lists, and other
desirable features requires setting the relevant properties on the
individual formatting objects. These are set through optional
attributes of the formatting object elements like
fo:block
. The good news is that
most of the property names and semantics are exactly the same as they
are for CSS. For example, to make the text in an fo:block
element bold, add a font-weight
attribute with the value
bold
, like this:
<fo:block font-weight="bold">Southern Corn Bread</fo:block>
The similarity with the equivalent CSS rule is obvious:
dish { font-weight: bold }
The property name is the same. The property value is the same.
The meaning of the property is the same. Similarly, you can use all
the font-weight
keywords and values
that you learned for CSS, like lighter
and 100
, 200
,
300
, 400
, etc. Only the syntactic details of how
the value bold
is assigned to the
property font-weight
and how that
property is then attached to the dish
element has changed. When XSL-FO and
CSS converge, they do so closely.
Many other properties come across from CSS by straight extrapolation. For instance, in Example 13-2 the ...
Get XML in a Nutshell, 3rd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.