A4用紙に印刷可能なピクセル数は？


htmlページをブラウザ標準の印刷機能で印刷する場合、縦向きのA4用紙に入る横幅は最大何ピクセルになるでしょうか？

css

[code]

    * {
      box-sizing: border-box;
    }
    .test1 {
      width: 1366px;
      border: 10px solid red;
    }
    .test2 {
      width: 1280px;
      border: 10px solid green;
    }
    .test3 {
      width: 1024px;
      border: 10px solid blue;
    }
    
[/code]

html

[code]

    <body>
      <div class="test1">test1 1366px</div>
      <div class="test2">test2 1280px</div>
      <div class="test3">test3 1024px</div>
    </body>
    
[/code]

上記のようなページでプレビューを試したところ、Chrome と IE11、Edge では  
1366px → 用紙からはみ出る  
1280px → 用紙からはみ出る  
1024px → 用紙内に収まる  
という結果になりました。  
FireFoxでのみ、すべてのサイズが用紙内に収まりました。

1024px程度の幅でページを作成すれば、すべてのブラウザの標準の印刷機能でA4縦の幅に収まると考えてよいのでしょうか？  
それとも、これらのサイズは端末の環境（ディスプレイなど）に依存するものなのでしょうか？  
A4用紙に該当するピクセル数を算出する方法がありましたら教えてください。




`px`は視野角を基準として決められていますが、プリンターの場合は標準の`1px = 1/96th of 1in`が適用されます([W3C
CSS3](https://drafts.csswg.org/css-
values-3/#lengths))。A4の横幅が`8.27`インチなので、`8.27 x 96 = 794px`です。

それでは1024px程度の幅でページを作成すれば、ブラウザの印刷機能の方でA4縦の幅に収まるかというと、FireFox、IE11、Edgeでは「縮小して全体を印刷する」がデフォルトとなっているため、またChromeの方は「縮小して全体を印刷する」という設定はないのですが自動的にその程度までは「縮小して全体を印刷する」仕様になっているためです。なお、linux版のChromeは勝手に「縮小して全体を印刷する」機能はなく1024pxの幅でもはみ出して印刷されます。

また、IE11、Edge が「縮小して全体を印刷する」にしても1280pxでは用紙からはみ出るようになるのは、規格とかに関係するものではなくて
IE11、Edge の仕様だと思います。

印刷に関して`px`を使用することに関しては、W3Cの['CSS: em, px, pt, cm,
in…'というページ](https://www.w3.org/Style/Examples/007/units.en.html)で以下のようになっていて、推奨はされていませんが使うなとはなっていません。Webの開発の場合、画面がメインで印刷はそれほど重視されません。画面レイアウトでは`px`を使う必要があるので、印刷でも使いたいというのが普通です。そういう要望に沿うため、`px`を
CSS 2.0までは相対長さ単位であったものを、`1px = 1/96
inch`に決めたわけです。歴史が浅いためブラウザーの対応が十分でないので注意して使う必要があるので推奨はされていないですが、最近のブラウザーを使うという前提であれば印刷に`px`を使っても問題はないと思われます。

[![画像の説明をここに入力](https://i.stack.imgur.com/YG2Wm.png)](https://i.stack.imgur.com/YG2Wm.png)

