gestion_table_tournante_libre/src/interface/impression.css
Mathieu Benoit 858018323b [ADD] print: preview screen, printable sheet, paper question
Printed pages must show exactly what will come out of the printer. An
Imprimer button in the event header opens a preview screen where each page
is a sheet at paper size, light whatever the theme, with its footer and,
under the strict draft rule, BROUILLON in outline; a proposal shown on a
retained plan prints as a draft. The paper is asked once per machine and
can be changed there. The table sheets offer one sheet per round. A failed
print shows IMPRESSION_ECHEC. The captures are republished with the button.
Checked: red first; 3651 node, 707 browser and 101 long tests green from
the index alone.

--- FR ---

[ADD] impression : aperçu, feuille imprimable, question du papier

Une page imprimée doit montrer exactement ce que l'imprimante rendra. Un
bouton Imprimer de la tête de l'événement ouvre un aperçu où chaque page
est une feuille au format du papier, claire quel que soit le thème, avec
son pied et, sous la règle stricte, BROUILLON au trait ; une proposition
montrée sur un plan retenu s'imprime en brouillon. Le papier se demande une
fois par machine et s'y change. Les feuilles par table offrent une feuille
par tour. Une impression échouée affiche IMPRESSION_ECHEC. Les captures
sont republiées avec le bouton.
Vérifié : rouge d'abord ; 3651 node, 707 navigateur et 101 longues vertes
depuis l'index seul.

Assisted-by: Claude Opus 5.5
2026-10-09 17:11:37 -04:00

72 lines
2.3 KiB
CSS

/* © 2026 TechnoLibre (http://www.technolibre.ca)
License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl) */
/* La feuille d'impression de l'aperçu (§ 11.7). Le document imprimé est
l'élément [data-impression] : une feuille [data-feuille] par page, aux
dimensions du papier en mm, qui demande par sa propriété page l'une des
quatre pages nommées ci-dessous — un papier, une orientation, à la taille
du papier, sans marge : la feuille porte elle-même sa marge. La
pagination est explicite, une feuille par page, et rien n'est laissé au
moteur : chaque feuille se termine par un saut de page.
À l'impression, seul le document se peint. Le masquage est gardé par
body:has([data-impression]) : sans aperçu ouvert, rien n'est masqué, et
l'impression d'un autre écran par le navigateur le rend tel qu'il est,
jamais en page blanche. Sous l'aperçu, tout élément qui n'est ni le
document, ni dans lui, ni l'un de ses ancêtres, disparaît : le bandeau,
la barre de l'aperçu, la feuille gabarit. Les ancêtres du document
perdent marges, retraits, bords et hauteurs imposées : la première
feuille commence au coin de la première page, et la hauteur d'un
ancêtre ne tronque jamais le document à une page. */
@page gtt-a4-portrait {
size: A4 portrait;
margin: 0;
}
@page gtt-a4-paysage {
size: A4 landscape;
margin: 0;
}
@page gtt-lettre-portrait {
size: letter portrait;
margin: 0;
}
@page gtt-lettre-paysage {
size: letter landscape;
margin: 0;
}
@media print {
body:has([data-impression]) *:not([data-impression], [data-impression] *, :has([data-impression])) {
display: none !important;
}
body:has([data-impression]),
body:has([data-impression]) :has([data-impression]) {
display: block !important;
position: static !important;
height: auto !important;
min-height: 0 !important;
max-height: none !important;
margin: 0 !important;
padding: 0 !important;
border: 0 !important;
overflow: visible !important;
}
[data-impression] {
display: block !important;
margin: 0 !important;
padding: 0 !important;
}
[data-impression] [data-feuille] {
margin: 0 !important;
border: 0 !important;
box-shadow: none !important;
break-after: page;
}
}