Les attributs des styles de paragraphe, de caractères et des zones spéciales

La syntaxe des styles décrite aux fiches Les styles de paragraphe et Les styles de caractère est conçue pour couvrir les cas les plus courants mais elle ne peut évidememnt pas répondre à tous les cas de figure. C’est pourquoi elle intégre un mécanisme de saisie d’attributs qui permet d’étendre les possibilités et donne une très grande liberté. Parmi les attributs les plus connus, celui d’usage immédiat est l’attribut class qui va permettre d’appliquer une ou plusieurs classes CSS modifiant la mise en forme. La feuille CSS d’une fiche intègre d’ailleurs par défaut une série de classes utiles.

Pour les styles de caractère, la syntaxe des attributs est simple : il suffit de spécifier juste après l’opérateur du style les attributs entre parenthèses. Un attribut se présente sous la forme d’un nom suivi d’un signe égal suivi de sa valeur. La valeur doit être entre guillemets si elle comporte une espace. Lorsqu’une référence est définie (cas des liens), celle-ci figure au début du bloc entre parenthères et doit être mise entre guillemets si elle comporte une espace ou un signe égal.

[c(class=XML) class]

[a("http://www.fph.ch/?lang=en" hreflang=en title="Version en anglais") FPH]

Exemples

Ce qui donne :

class (code informatique auquel on applique la classe XML (classe proposée par défaut par la feuille de style d’une fiche et qui met le texte en violet, le code HTML résultant est <code class="XML">class</code>)

FPH (Lien pour lequel on indique la langue du site de destination avec un titre complémentaire, le code HTML résultant est <a href="http://www.fph.ch/?lang=en" hreflang="en" title="Version en anglais">FPH</a>)

Le nombre d’attributs est illimité et les noms sont libres sous condition de respecter la syntaxe des attributs XML (pas d’espace, de caractères accentués ou spéciaux hormis -._).

Attention : la transformation XSLT par défaut ajoute tous les attributs à la balise HTML résultante, cela peut aboutir à du code HTML jugé non valide si on ajoute des attributs fantaisistes

Pour les styles de paragraphe, la syntaxe est similiaire : la déclaration des attributs doit être placé en début de paragraphe (avant même les caractères spéciaux) en commençant par [( et en finissant par )]. Cela s’applique aussi aux cellules d’un tableau et aux lignes de code.

La syntaxe pour les zones spéciales est la même que pour les paragraphes à ceci près que les attributs doivent être déclarés sur la ligne précédent la déclaration de la zone spéciale et ne pas contenir autre chose que la déclaration d’attribut

[(class=G)] Paragraphe en vert

[(class=R)]##Titre de niveau 2 en rouge

[(class=M)]
+++

Zone de codes
  entièrement en magenta
[(class=B)] sauf cette ligne en bleu
[(class=G)] et cette ligne en vert
+++++++++++

[(class=R)]
===
l= la légende aussi peut {{avoir}} des [z(class=B) styles] de caractère
Cellule 1
Celulle 2 (avec un long texte pour que l'alignement à droite soit visible et avec du [z(class=G)style] dedans)

[(colspan=2 class="B TAR")] Cellule en bleu sur deux colonnes alignée à droite
===

Exemples

Ce qui donne :

Paragraphe en vert

Titre de niveau 2 en rouge

Zone de codes
  entièrement en magenta
sauf cette ligne en bleu
    et cette ligne en vert
la légende aussi peut avoir des styles de caractère
Cellule 1Celulle 2 (avec un long texte pour que l’alignement à droite soit visible et avec du style dedans)
Cellule en bleu sur deux colonnes alignée à droite

Classes prédéfinies

Le tableau suivant donne les classes proposées par défaut dans fiche.css. Certaines de ces classes ont un but purement visuel (R, TAL), d’autres ont une approche plus « sémantique » (XML). Elles sont toutes en majuscules, ce qui permet de le distinguer des classes personnalisées.

Les classes prédéfinies dans le modèle par défaut
Nom de la classeConséquence à l’affichage
Bcolorie le texte en bleu
Ccolorie le texte en bleu clair (Cyan)
CBpropriété CSS clear: both
utilisée pour qu’un paragraphe ne « s’écoule » pas autour d’une image placée avant lui
CLÉquivalent de clear: left;
CLSClasse d’objet informatique, interface
CRÉquivalent de clear: right;
Gcolorie le texte en vert
KEYMot-clé réservé (par exemple, true)
Mcolorie le texte en magenta
MTDMéthode, fonction
PTHChemin
Rcolorie le texte en rouge
RSCRessource (par exemple le nom d’un fichier)
STGChaîne de caractères, valeur constante
TARtext-align: right; Alignement à droite (uniquement pour les paragraphes et les cellules)
TACtext-align: center; Alignement au centre (uniquement pour les paragraphes et les cellules)
TALtext-align: left; Alignement à gauche (uniquement pour les paragraphes et les cellules)
TAJtext-align: justify; Alignement justifié (uniquement pour les paragraphes et les cellules)
UIÉlément d’interface
XMLÉlément XML
Ycolorie le texte en jaune

Le cas des listes

Le cas des listes est un plus compliqué si l’on veut avoir une gestion très fine des attributs. En effet, le début d’une liste se signale simplement en commençant par un tiret Cependant, lorsque l’on tape « - début de liste » , on crèe en réalité trois éléments imbriqués <ul><li><p> Or chacun est susceptible de diposer de ses propres attributs. Il faut alors respecter la syntaxe suivante :

La classe OL donné à un élément <ul> permet de transformer cette liste en liste numérotée Cette fonction est propre à la transformation XSLT du modèle par défaut. Cette classe doit être définie en premier.

[(class=R)]
- Liste par défaut en rouge
[(class=G)] - cet élément est entièrement en vert
_ y compris les paragraphes suivant
_ comme le montre ce paragraphe
[()(class=G)] - ici seule la première ligne est en vert
_ la suite est en rouge
- ici la première ligne est en rouge
[(class=G)]_ et c’est la deuxième ligne qui est seulement en vert
_ (effectivement)
[(class=M)(class=C)] - Enfin, cette première ligne est en bleu ciel
_ alors que le reste
_ est en magenta
[(class=G)]_ sauf la dernière
[(class=OL)]
-- Ici on inclut
[(class=G)] -- une liste numérotée
__ avec toujours les mêmes possibilités
[(class=M)]__ de couleur

Ce qui donne la liste suivante :

  • Liste par défaut en rouge

  • cet élément est entièrement en vert

    y compris les paragraphes suivant

    comme le montre ce paragraphe

  • ici seule la première ligne est en vert

    la suite est en rouge

  • ici la première ligne est en rouge

    et c’est la deuxième ligne qui est seulement en vert

    (effectivement)

  • Enfin, cette première ligne est en bleu ciel

    alors que le reste

    est en magenta

    sauf la dernière

    1. Ici on inclut

    2. une liste numérotée

      avec toujours les mêmes possibilités

      de couleur

Sur la même principe que OL, si la première classe attribuée à la liste est DL, la liste est transformée en liste de définition (<dl><dt></dt><dd></dd>. Dans ce cas, le premier paragraphe d’un item de la liste sert à la construction de la balise (<dt> et les suivants sont inclus dans la balise <dd>.

[(class=DL)]
-BDF
_ logiciel de gestion d'une fichotèque
-Scrutarit
_ Moteur de recherche sur les métadonnées

donne :

BDF

logiciel de gestion d’une fichotèque

Scrutari

Moteur de recherche sur les métadonnées

Repose sur le format ScrutariData