Page 1 sur 1

DocBook, XSLT, commentaire conditionnel IE et indentation.

Posté : 08 févr. 2008, 14:24
par Hywan
Bonjour :),

le titre est un peu long n'est-ce pas ?
J'ai un soucis avec IE 7 (qui l'eût cru ...). Je fais un commentaire conditionnel pour IE <= 6 (donc < 7), mais à travers DocBook. Pour avoir un résultat plaisant sous DocBook, j'active l'indentation de XSL (<xsl:output indent="yes"> ou un truc du genre, je ne sais plus exactement). Résultat des courses, il m'écrit le commentaire conditionnel de cette façon :

Code : Tout sélectionner

<!--[if lte IE 6]> // un CSS par exemple <![endif] -->
Et c'est là tout le problème ! IE 6 comprend le saut de ligne après le [endif], mais pas IE 7. Son moteur de rendu est complètement perdu, et il se fout en l'air (j'ai une page toute déglinguée — seul le fond apparaît, pas terrible —).
Donc je dois enlever l'indentation ? Hors de question, le résultat HTML sera bien trop sale :?.

Une idée ?
Je retouche les fichiers juste derrière avec PHP pour la colorisation syntaxique. Je pourrais faire intervenir Perl (un truc du genre : perl -pi -e 's/\[endif\]\n\s*-->/\[endif\]-->/g' $i par exemple), mais c'est un peu lourd et crade. Si une solution existe en XSL, ce serait mieux.

On notera au passage que IE 7 est vraiment codé comme une patate. Soit disant qu'il y avait des efforts de fait, un saut de ligne et c'est terminé ... Croyez moi, j'ai cherché un moment avant de trouver d'où venait le problème ...

<edit>
Alsacréations a été plus rapide ;-)
Sujet résolu.
</edit>

Posté : 08 févr. 2008, 19:59
par cf357
petite question au passage, en restant à peu près dans le sujet (quand même !) ... tu génères tes docbooks avec quoi ? db2html ?

Posté : 08 févr. 2008, 20:10
par Hywan
Je travaille à partir d'un fichier XML, DTD de DocBook normal.
J'ai réécris une partie des feuilles XSL de DocBook XHTML.
J'utilise xsltproc pour appliquer les XSLT à mon XML pour tout les formats (HTML, CHM, ManPages, DVI, PS etc.).
J'utiliser dblatex pour générer les PDF.

db2html donnant un résultat bien trop crade. Même plus que les feuilles XSLT natives de DocBook, voilà pourquoi je les ai réécrite (en partie).

Mon serveur ne fonctionne pas temporairement (eeet meeeerde), mais tu iras dans http://hoa-project.net/Manual/Source/ et tu pourras fouiner un peu :). Jette notamment un coup d'oeil au fichier shell ./gen, et dans ./DocBook/my-xsl-stylesheets/ (en commençant par ./ALIRE évidemment).

Posté : 08 févr. 2008, 20:18
par cf357
Je te remercie !

Posté : 08 févr. 2008, 20:23
par Hywan
Serveur dépanné. Je mets à jours les fichiers de DocBook.