如何对齐块内的两个内嵌元素

问题描述:

我正在使用xsl-fo来呈现PDF。我需要为我的TOC创建一个表头,在左边有一个元素(“章节内容”),右边是另一个元素(“Page”),两个元素出现在同一行上。如何对齐块内的两个内嵌元素

目前,我创建了两个fo:inline元素来包装文本,然后将其包装在fo:block元素下。我的xslfo代码如下所示:

<fo:block text-align="left"> 
     <fo:inline color="#0082C8" font-size="8pt" font-family="serif" font-weight="normal" >Chapter Contents: </fo:inline> 
     <fo:inline font-size="8pt" font-family="serif" font-weight="normal" alignment-adjust="alphabetic" >Page </fo:inline> 
</fo:block> 

此代码将简单地将这两个元素放在左侧。如果我确实将两个内嵌元素分成两个独立的块,它们将处于不同的行中!此外,在第二个文本中添加text-align =“right”将不起作用。

专家能否提供一些帮助?我希望两个元素都出现在同一行上,一个在右侧,另一个在左侧。谢谢!

我对xsl-fo一无所知,但在“正常”的html/css中,您会给float:left到第一个元素,float:right到第二个元素。

+0

我尝试过放入float:left和float:right,但它似乎什么也没有:( – Kevin

+1

看起来你需要一个特殊的块 - >请看第二个例子:http ://www.data2type.de/en/xml-xslt-xslfo-en/xsl-fo/xsl-fo-introduction/the-float-concept – chaenu

+2

该页面现在是404,所以如果你已经回答了问题,而不仅仅是联系。 –

随着

< FO:领导/>

你可以在左,中,右输出文本;并定义'spacer'(如点等)。虽然它不是很直观,但它工作得很好。