문제

Moving this question to a different thread, as requested.

I'm trying to customize DocBook XSL's HTML output.

After a docbook <table> element, the stylesheets generate this code:

<div class="table">
    [...]
</div>
<p>
    <br class="table-break">
</p>

This induces unwanted spaces in the HTML output and I can't find where this code comes from as a search for "table-break" in the DocBook XSL comes up with no results. How would I go about getting rid of this code?

Thanks!

~Slampisko

도움이 되었습니까?

해결책

This information is directed at Docbook XSL 1.77.1. This may not match up with your version, especially given that your post table break element is wrapped with <p>:

As mentioned by mzjn, the formal.xsl file has what you're looking for. formal.object is a named template that is called when you specify a CALS table (or embed a graphic/mediaobject). Within this template there is a test to check if a break element should be added afterward. There is a global parameter (top of the file) that controls this behaviour. It is enabled by default:

<xsl:param name="formal.object.break.after">1</xsl:param>

You can redefine this by specifying the parameter to your XSLT processor, with Saxon, for example, it would take the form:

java -jar saxon.jar file.xml your.customisation.xsl formal.object.break.after=0

You can probably also shadow it from within your customisation by redefining formal.object.break.after after you have imported the base stylesheet.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top