@page
@page
は CSS のアット規則で、文書を印刷するときに一部の CSS プロパティを変更するために使用します。
構文
@page {
margin: 1cm;
}
@page :first {
margin: 2cm;
}
記述子
size
- 対象となるページボックスの包含ブロックの寸法と向きを指定します。一般的な場合、1つのページボックスが1枚の用紙に印刷され、対象となる用紙の寸法を示します。
marks
- クロップや登録マークを文書に追加します。
bleed
- ページのレンダリングがクリップされた場合の、ページボックス間の距離を示します。
解説
@page
ですべての CSS プロパティを変更できるわけではありません。変更できるのは、 margin, orphans, widows と、文書のページ区切りだけです。これ以外の CSS プロパティを変えようとしても、無視されます。
@page
アット規則は、 CSS オブジェクトモデルインターフェイス CSSPageRule
からアクセスできます。
<length>
の単位、 vh
, vw
, vmin
, vmax
の取り扱い方について議論中です。差し当たっては、これらを @page
アット規則の中で使わないでください。形式文法
@page <page-selector-list> { <page-body> }ここで
<page-selector-list> = [ <page-selector># ]?
<page-body> = <declaration>? [ ; <page-body> ]? | <page-margin-box> <page-body>ここで
<page-selector> = <pseudo-page>+ | <ident> <pseudo-page>*
<page-margin-box> = <page-margin-box-type> '{' <declaration-list> '}'ここで
<pseudo-page> = : [ left | right | first | blank ]
<page-margin-box-type> = @top-left-corner | @top-left | @top-center | @top-right | @top-right-corner | @bottom-left-corner | @bottom-left | @bottom-center | @bottom-right | @bottom-right-corner | @left-top | @left-middle | @left-bottom | @right-top | @right-middle | @right-bottom
例
@page 擬似クラスの例
仕様書
仕様書 | 状態 | 備考 |
---|---|---|
CSS Logical Properties and Values Level 1 :recto and :verso の定義 |
編集者草案 | :recto 及び :verso ページセレクターを追加 |
CSS Paged Media Module Level 3 @page の定義 |
草案 | CSS Level 2 (Revision 1) から変更はないが、 @page 内でより多くの@規則が利用できるようになった。 |
CSS Level 2 (Revision 1) @page の定義 |
勧告 | 初回定義 |
ブラウザーの互換性
BCD tables only load in the browser
関連情報
- この件 (ページベースのカウンターなど) に関する進捗の追跡は、 Bugzilla のチケット [META] CSS Paged Media Module Level 3 をご覧ください。