У меня есть несколько страниц, которые я хотел бы настроить так, чтобы печать по умолчанию менялась до формата A4 в somecases, но портрет A3 в других.
Основываясь на ответе css print styling Я попытался настроить следующее в файле print.less
@media print{
.print-portrait-a3 {
@page {
size: A3 portrait;
margin: 0.5cm;
}
}
.print-landscape-a4 {
@page {
size: A4 landscape;
margin: 0.5cm;
}
}
.print-portrait-a4 {
@page {
size: A4 portrait;
margin: 0.5cm;
}
}
}
Затем я помещаю классы .print-portrait-A3 и т.д. в верхней части разделов страницы, которые я печатаю, чтобы заставить их печатать на разные размеры страниц.
Однако я не могу заставить это работать - в зависимости от того, какой последний стиль в моем css является тем, который используется всеми страницами.
Я только на самом деле начинаю с CSS (возможно, очевидно, что у меня нет большой догадки), поэтому я хотел бы получить некоторое объяснение, чтобы разобраться в моих недоразумениях.
Я использую jade и bootstrap
Я не думаю, что вы можете вложить CSS под div, как раз под медиа-запрос. Вот несколько непроверенных кодов, адаптированных из http://www.w3.org/TR/css3-page/#page-size-prop:
/* style sheet for "A4" printing */
@media print and (width: 21cm) and (height: 29.7cm) {
@page .print-landscape-a4 {
margin: 3cm;
size: A4 landscape;
}
}
Вы также можете посмотреть https://stackoverflow.com/questions/3341485/how-to-make-a-html-page-in-a4-paper-size-pages