CSS/@page
表示
< CSS
@page
[編集]@pageは、印刷時のページスタイルを定義するためのCSSルールです。このルールを使用すると、ページのサイズ、余白、向き、境界線など、印刷に関連する設定をカスタマイズできます。主に印刷用スタイルシートで利用され、PDF生成やプリンター出力に特化したスタイル設定が可能です。
構文
[編集]基本的な@pageの構文は以下の通りです:
@page { <プロパティ>: <値>; }
また、特定のページに異なるスタイルを適用する場合には、以下のような擬似クラスを使用します:
:first- 最初のページ:left- 偶数ページ(左ページ):right- 奇数ページ(右ページ)
使用例
[編集]ページ全体の余白を設定
[編集]@page { margin: 20mm; }
この例では、ページ全体の余白を20mmに設定しています。
ページサイズと向きを設定
[編集]@page { size: A4 portrait; }
この例では、ページサイズをA4に設定し、縦向き(portrait)に指定しています。
最初のページだけ異なるスタイルを設定
[編集]@page :first { margin-top: 50mm; margin-bottom: 30mm; }
この例では、最初のページに特別な余白を設定しています。
偶数ページと奇数ページに異なるスタイルを適用
[編集]@page :left { margin-left: 25mm; } @page :right { margin-right: 25mm; }
この例では、偶数ページの左余白と奇数ページの右余白をそれぞれ25mmに設定しています。
プロパティ
[編集]@pageルールで使用可能なプロパティには以下のものがあります:
margin- ページの余白を指定します(例:10mm、1inなど)。size- ページサイズを指定します。プリンター標準サイズ(例:A4、letter)や、カスタムサイズ(例:size: 210mm 297mm;)が指定可能です。marks- トリムマークやレジストレーションマークを設定します(例:crop、cross)。bleed- 裁ち落とし領域を指定します。
注意事項
[編集]@pageは印刷用に特化しているため、通常のブラウザ画面では効果がありません。主に印刷プレビューや印刷時に反映されます。- 一部のブラウザや印刷設定では、
@pageの特定のプロパティがサポートされない場合があります。
ブラウザ対応状況
[編集]@pageは多くのモダンブラウザでサポートされています。ただし、marksやbleedなどのプロパティはブラウザによる対応が異なるため、使用時には事前確認が推奨されます。
- サポートあり: Google Chrome, Mozilla Firefox, Microsoft Edge, Safari(印刷機能に対応)
- サポート未対応の可能性: 古いブラウザやモバイルブラウザ
関連情報
[編集]- MDN Web Docs: @page
- CSSWG: The @page Rule
- CSSWG: Flow-Relative Page Classifications
- CAN I USE: CSS Paged Media (@page)
@pageを活用すると、印刷時のレイアウトを細かく調整し、プロフェッショナルな仕上がりを実現できます。特にPDF生成や印刷物のデザインに役立つルールです。