Ignore:
Timestamp:
01/26/2024 01:55:51 PM (5 months ago)
Author:
Pierre Labastie <pierre.labastie@…>
Branches:
12.1, 12.1-rc1, multilib, trunk, xry111/arm64, xry111/clfs-ng, xry111/loongarch, xry111/loongarch-12.1, xry111/mips64el, xry111/update-glibc
Children:
360fdfca
Parents:
ea93c11
git-author:
Pierre Labastie <pierre.labastie@…> (01/26/2024 01:53:30 PM)
git-committer:
Pierre Labastie <pierre.labastie@…> (01/26/2024 01:55:51 PM)
Message:

Fix some defects of lfs book formatting

  • have title of section stay visible when scrolling
  • when clicking on an internal link, make it fully visible instead of hidden behind the header
File:
1 edited

Legend:

Unmodified
Added
Removed
  • stylesheets/lfs-xsl/xhtml/lfs-sections.xsl

    rea93c11 r44850bb  
    1212
    1313    <!-- preface:
    14            Output non sect1 child elements before the TOC -->
     14         Output non sect1 child elements before the TOC
     15         Output title outside of the <div> because we want to be able to
     16         use it at a fixed position -->
    1517    <!-- The original template is in {docbook-xsl}/xhtml/components.xsl -->
    1618  <xsl:template match="preface">
    1719    <xsl:call-template name="id.warning"/>
     20    <xsl:call-template name="preface.titlepage"/>
     21    <xsl:call-template name="component.separator"/>
    1822    <div>
    1923      <xsl:apply-templates select="." mode="class.attribute"/>
     
    2731        </xsl:attribute>
    2832      </xsl:if>
    29       <xsl:call-template name="component.separator"/>
    30       <xsl:call-template name="preface.titlepage"/>
    3133      <xsl:apply-templates/>
    3234      <xsl:variable name="toc.params">
     
    4547  </xsl:template>
    4648
     49    <!-- part:
     50         Output non sect1 child elements before the TOC
     51         Output title outside of the <div> because we want to be able to
     52         use it at a fixed position -->
     53    <!-- The original template is in {docbook-xsl}/xhtml/divisions.xsl -->
     54  <xsl:template match="part">
     55    <xsl:call-template name="id.warning"/>
     56
     57    <xsl:call-template name="part.titlepage"/>
     58
     59    <div>
     60      <xsl:apply-templates select="." mode="common.html.attributes"/>
     61      <xsl:call-template name="id.attribute">
     62        <xsl:with-param name="conditional" select="0"/>
     63      </xsl:call-template>
     64
     65      <xsl:apply-templates/>
     66      <xsl:variable name="toc.params">
     67        <xsl:call-template name="find.path.params">
     68          <xsl:with-param name="table" select="normalize-space($generate.toc)"/>
     69        </xsl:call-template>
     70      </xsl:variable>
     71      <xsl:if test="not(partintro) and contains($toc.params, 'toc')">
     72        <xsl:call-template name="division.toc"/>
     73      </xsl:if>
     74    </div>
     75  </xsl:template>
     76
    4777    <!-- chapter:
    48            Output non sect1 child elements before the TOC -->
     78           Output non sect1 child elements before the TOC
     79           Output title before div to be able to fix the title position -->
    4980    <!-- The original template is in {docbook-xsl}/xhtml/components.xsl -->
    5081  <xsl:template match="chapter">
    5182    <xsl:call-template name="id.warning"/>
     83    <xsl:call-template name="chapter.titlepage"/>
     84    <xsl:call-template name="component.separator"/>
    5285    <div>
    5386      <xsl:apply-templates select="." mode="class.attribute"/>
     
    6194        </xsl:attribute>
    6295      </xsl:if>
    63       <xsl:call-template name="component.separator"/>
    64       <xsl:call-template name="chapter.titlepage"/>
    6596      <xsl:apply-templates/>
    6697      <xsl:variable name="toc.params">
     
    79110  </xsl:template>
    80111
     112    <!-- appendix:
     113           Output non sect1 child elements before the TOC
     114           Output title before div to be able to fix the title position -->
     115    <!-- The original template is in {docbook-xsl}/xhtml/components.xsl -->
     116  <xsl:template match="appendix">
     117
     118    <xsl:call-template name="id.warning"/>
     119
     120    <xsl:call-template name="appendix.titlepage"/>
     121
     122    <xsl:element name="div" namespace="http://www.w3.org/1999/xhtml">
     123      <xsl:call-template name="common.html.attributes">
     124        <xsl:with-param name="inherit" select="1"/>
     125      </xsl:call-template>
     126      <xsl:call-template name="id.attribute">
     127        <xsl:with-param name="conditional" select="0"/>
     128      </xsl:call-template>
     129
     130      <xsl:apply-templates/>
     131
     132      <xsl:variable name="toc.params">
     133        <xsl:call-template name="find.path.params">
     134          <xsl:with-param name="table" select="normalize-space($generate.toc)"/>
     135        </xsl:call-template>
     136      </xsl:variable>
     137
     138      <xsl:if test="contains($toc.params, 'toc')">
     139        <xsl:call-template name="component.toc">
     140          <xsl:with-param name="toc.title.p" select="contains($toc.params, 'title')"/>
     141        </xsl:call-template>
     142      </xsl:if>
     143
     144    </xsl:element>
     145  </xsl:template>
     146
    81147    <!-- sect1:
    82148           When there is a role attibute, use it as the class value.
    83149           Process the SVN keywords found in sect1info as a footnote.
     150           Output title before the containing <div> so that the title
     151           can be at a fixed position.
    84152           Removed unused code. -->
    85153    <!-- The original template is in {docbook-xsl}/xhtml/sections.xsl -->
    86154  <xsl:template match="sect1">
     155    <xsl:call-template name="sect1.titlepage"/>
    87156    <div>
    88157      <xsl:choose>
     
    97166      </xsl:choose>
    98167      <xsl:call-template name="language.attribute"/>
    99       <xsl:call-template name="sect1.titlepage"/>
    100168      <xsl:apply-templates/>
    101169      <xsl:apply-templates select="sect1info" mode="svn-keys"/>
Note: See TracChangeset for help on using the changeset viewer.