f you're going to use widths in pixels, do remember that the default
target-resolution for PDF is 72dpi, which may or may not match the
resolution of your image. Recalculating the px-widths into something
more absolute is recommended for predictable results.
CSSToXSLFO is a utility which can convert an XML document, together with a CSS2 style sheet, into an XSL-FO document, which can then be converted into PDF, PostScript, etc. with an XSL-FO-processor. It has special support for the XHTML vocabulary, because that is the most obvious language it would be used for. The tool has a number of page-related extensions. It also comes with an API in the form of an XML filter.