Une feuille de style pour l’impression

  • Profil : Débutant, Expert
  • Technologie : CSS
  • Auteur : Laurent Denis
  • Mise à jour : 25/01/2009

En bref

Une solution CSS qui remplace avantageusement la version imprimable d’un document.


Le projet

Votre site propose de nombreuses ressources : images, textes… que vos visiteurs aimeront peut-être imprimer afin de les consulter à tête reposée. Mais une mise en page web est rarement reproductible telle quelle sur papier : les outils de navigation (menus, boutons...) y sont inutiles, l'écran est rarement respectueux du format A4, et vos lecteurs préfèreraient peut-être se passer de vos belles couleurs au profit d'une économie sur leur cartouche d'encre.

Bien-sûr, vous pouvez proposer une seconde version « imprimable » de vos documents. Mais vous gagnerez du temps en créant plutôt une simple feuille de style spécifique, qui permettra d'imprimer proprement votre document original depuis n'importe quel navigateur respectueux des standards. Naturellement, elle doit être étroitement adaptée à la présentation de votre page : il n'y a pas de feuille de style-type d'impression.

Attention : — Le rôle d'une feuille de style n'est pas de contrôler au pixel près le rendu à l'écran. De la même manière, les règles d'impression CSS2 reposent sur la capacité des navigateurs à gérer par eux-mêmes une grande partie des problèmes de transfert sur papier de pages web. Si l'utilisateur l'a configuré ainsi, le navigateur outrepassera les règles de votre feuille de style d'impression. Vous devez compter également avec les particularités de son imprimante : notre propos est donc de garantir une impression correcte, mais non d'en déterminer précisément le moindre détail typographique.

Pour lier vos styles d'impression à vos pages XHTML

Si vous utilisez des feuilles de style externes

Votre feuille de style d'impression est différente de votre feuille de style « générale » : enregistrée dans un fichier séparé (par exemple, print.css), elle n'est utilisée par le navigateur que lorsque le visiteur imprime la page consultée. Dans ce cas, les règles qu'elle contient s'ajoutent aux règles de votre feuille de style générale. La feuille de style d'impression a alors priorité sur la feuille de style générale, puisqu'elle est spécifiquement dédiée au média d'impression (print).

Le lien suivant doit être placé dans l'en-tête de votre page web :

<link rel="stylesheet" type="text/css" media="print" href="print.css" />
      

Si vous utilisez une feuille de style interne

Vous pouvez ajouter à la section <style>…</style> de votre en-tête les styles spécifiques pour l'impression grâce à la règle @media :

@media print {
  … vos styles…
}
      

Orientation et marges

Pour tout le contenu

Pour un élément spécifique

Couleurs

Arrière-plans

Avant-plan

Impression sélective

Sauts de page et lignes orphelines

Impression des URL

Attention : — MSIE n'implémente pas la propriété content.

Consultez les feuilles de style d'OpenWeb :


Une question, une remarque ? Écrivez à l'auteur.

Page valide XHTML 1 Strict, CSS2 et accessible AA.
Ce site s'affiche mieux dans un navigateur conforme aux standards, voici pourquoi.
Site hébergé par l'APINC et propulsé par SPIP.