使用嵌套生成的内容

时间:2015-10-06 06:13:59

标签: css-paged-media pdf-reactor

这是关于Paged Media的问题。 我想混合一个字符串集与运行元素。它适用于PrinceXML,但不适用于PDFReactor。我的问题是,这可能在PDFReactor中吗?

HTML

<p class="head">
    <span class="first">Repeatable title</span>
    <span class="divider">|</span>
    <span class="last"></span>
</p>

CSS

p.head {
    position: running(heading);
    font-size: 8pt;
    margin: 0;
    padding: 0;
}

@page {
    size: A4;

    @top-left {
        content: element(heading);
    }
}

到目前为止,一切都很好。但是当我尝试从H1定义一个字符串集并尝试将其写入span.last时,这不起作用。

h1 {
    string-set: doctitle content();
}

p.head span.last {
    content: string(doctitle);
}

1 个答案:

答案 0 :(得分:1)

这也适用于PDFreactor。只是语法有点不同。 PDFreactor不支持具有命名字符串的content()属性的string-set函数。相反,它使用的self值类似于content()content(text)(请参阅http://www.pdfreactor.com/product/doc_html/index.html#NamedStrings

还有第二个问题。您正在span元素本身上设置content属性。通常在CSS中,创建具有content属性的生成内容实际上仅允许页边距框和伪元素,例如::before::after。这也是浏览器支持它的方式。不知道为什么这在普林斯有效。

所以基本上你只需对你的样式表做两次小调整就可以在PDFreactor中运行:

h1 {
    string-set: doctitle self;
}

p.head span.last::before {
    content: string(doctitle);
}