I have data stored in structured XML that I want to make it more readable using XSLT (or another alternative). The target document should have lots of instances of text aligned both to the left and to the right in the same line, and I need to have a behaviour like div floats:
<div style="float: left;">
<p align=left>
Left text. Left text. Left text. Left text. Left text. Left text.
</p>
</div>
<div style="float: right;">
<p align=right>
Right text. Right text. Right text. Right text. Right text. Right text.
</p>
</div>
<div style="clear: both;" />
This way, when the text lenght of both are bigger than the container width, the "Left text" DIV is written, then the "Right text" DIV is writter BELOW it.
I can't use XSLT to make a HTML file, because it will be use in print and I also need a language that has some "keep together" feature at page breaks (if a page break occurs in the middle of the element, it should break before the element). Having tables that supports auto sizing its columns (like the HTML table) would be a huge plus but not required.
I was studying XSL-FO, but I couldn't find a free renderer that supports those features. I thought about using XSL to make a WordML file, but I haven't found any tutorials on it. Having a Word (or Open Office) document would be great, cause I could make minor adjustments. Also, I'm considering using LaTex.
What can you suggest me?
EDIT: I was checking some CSS features that I didn't know about (haven't messed with it in years) and it does have some print related features (page-break-inside:avoid, @page, etc) besides having an excelent support for floats and auto layout of tables. Even though the print features are not widelly supported, Opera and IE do support it and I ran some tests in IE9 an it rendered very well. So I will try XSLT with HTML/CSS since it has everything I need and will have a smoother learning curve (I already know some CSS and have use HTML for years).