CSS властивості
ГлавнаяДовідник CSSПравило @page в CSS

Правило @page в CSS

191

Правило @page дозволяє задати значення полів під час друку документа або сторінок, у яких тип носія заданий як print.

Синтаксис

<code>@page [ { :left | :right | :first } 
] { ... }

Позначення

Опис Приклад
<тип> Вказує тип значення. <розмір>
A && B Значення повинні виводитися у вказаному порядку. <размер> && <колір>
A | B Вказує, що потрібно вибрати лише одне значення із запропонованих (A або B). normal | small-caps
A || B Кожне значення може використовуватися самостійно або спільно з іншими у довільному порядку. width || count
[ ] Групує значення. [ crop || cross ]
* Повторювати нуль або більше разів. [,<час>]*
+ Повторювати один або більше разів. <число>+
? Вказаний тип, слово або група не є обов'язковим. inset?
{A, B} Повторювати не менше A, але не більше B разів. <радіус>{1,4}
# Повторювати один або більше разів через кому. <час>#

Значення

Для встановлення полів на сторінці використовується універсальна властивість margin або його похідні — margin-top, margin-right, margin-bottom та margin-left, що задають відповідно відступ зверху, праворуч, знизу та зліва. Негативне значення допускається, але частина сторінки може бути «відрізаною». Властивості border та padding не застосовні.

Ключове слово :left дозволяє задати поля для всіх лівих сторінок, :right — для всіх правих, а :first  — для першої сторінки.

Приклад

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>@page</title> <link rel="stylesheet" href="/example/css/print.css" media="print">
</head>
<body> <h1>Метод лову лева в пустелі</h1> <h2>Метод послідовного перебору</h2> <p>Нехай лев має габаритні розміри LxWxH, де L — довжина лева від кінчика носа до пензлика хвоста, W — ширина лева, а H — його висота. Після чого пустелю розбиваємо на ряд елементарних прямокутників, розмір яких збігається із шириною та довжиною лева. Враховуючи, що лев може бути не суворо на заданій ділянці, а одночасно на двох з них, клітину для лову слід робити підвищеної площі, а саме 2Lx2W. Завдяки цьому ми уникнемо помилок, коли в клітці виявиться спійманим лише половина лева або, що гірше, лише його хвіст.</p> <p>Далі послідовно накриваємо кожен із розмічених прямокутників пустелі клітиною і перевіряємо, чи спійманий лев чи ні. Як тільки лев опиниться в клітці, процедура затримання вважається завершеною.</p>
</body>
</html>

Сам файл print.css виглядає так.

body { font-family: Times, 'Times New Roman', serif; /* Шрифт із засічками */
} 
h1, h2, p { color: #000; /* Чорний колір тексту */
} 
@page :first { margin: 1cm; /* Відступи для першої сторінки */
} 
@page :left { margin: 1cm 3cm 1cm 1.5cm; /* Відступи для всіх лівих сторінок */
} 
@page :right { margin: 1cm 3cm 1cm 1.5cm; /* Відступи для всіх правих сторінок */
}

Специфікація

Специфікація Статус
CSS Paged Media Module Level 3 Робочий проект
CSS Level 2 Revision 1 (CSS 2.1) Рекомендація

Специфікація

Кожна специфікація проходить кілька стадій схвалення.

  • Recommendation (Рекомендація) — специфікація схвалена W3C і рекомендована як стандарт.
  • Candidate Recommendation (Можлива рекомендація) — група, яка відповідає за стандарт, задоволена, як він відповідає своїм цілям, але потрібна допомога спільноти розробників з реалізації стандарту.) — на цьому етапі документ представлений на розгляд Консультативної ради W3C для остаточного затвердження. та внесення поправок для розгляду спільнотою.
  • Editor's draft (Редакторська чернетка) — чорнова версія стандарту після внесення змін до редакторів проекту.
  • Draft (Чернетка специфікації) — перша чорнова версія стандарту.

Браузери

8 12 2 6 5 19
19 6 5

Браузери

У таблиці браузерів застосовуються такі позначення.

  •  — властивість повністю підтримується браузером з усіма допустимими значеннями;
  •  — властивість браузером не сприймається та ігнорується;
  •  — при роботі можлива поява різних помилок, або властивість підтримується лише частково, наприклад, не всі е допустимі значення діють або властивість застосовується не до всіх елементів, які вказані в специфікації. div class="field field-name-field-css-cat field-type-taxonomy-term-reference field-label-hidden">