window.screen

window.screen

仕様書

意味

[14] Screen オブジェクトは、 出力装置 (output device) を表します >>8

[17] 出力装置という語は CSSOM View 仕様書でも明確な定義は与えられていませんが、 レンダリングされるべき画面のことを指しています。通常は物理的なディスプレイ (単独の装置のこともあれば、ノートPCスマートフォンのように計算機本体と一体化していることもあります。) ですが、仮想化されて物理的に存在しない場合もあります。

[19] CSSOM View は「the screen of the output device」という語を起源に触れる時だけ使っています。それ以外は単に 「the output device」と言っています。

[18] マルチディスプレイ環境での扱いを CSSOM View 仕様書は規定していませんが、 が所在する (とプラットフォーム依存の方法で決定される) 画面自動的に選択されるようです。

状態

[22] 次の状態を持ちます。

高さ
装置画素の縦サイズ
devicePixelRatio で参照されます。
ロック画面表示中
プラットフォームロック画面の表示中かどうかを表します。 文書可視性状態に影響します。 値が変化した時 visibilitychange発火されるかもしれません。

[23] 画面には、座標系が定義されます。

[26] は、画面内に存在して、画面座標系上の位置や、 可視性状態を持ちます。


[27] プラットフォームによっては、一定時間利用者の操作が無いと、 スクリーンセーバーロック画面画面省電力モードといったが表示されない状態に移行することがあります。 動画再生中など、それを無効化するべき場合もあります。

メンバー

[11]

[16] Screen インターフェイスcolorDepth 属性pixelDepth 属性は、 24 を返さなければなりません >>8

幅と高さ

[12] 出力装置は、 (width) 高さ (height) を持ちます。

[13] Screen インターフェイスwidth 属性および availWidth 属性は、 文脈オブジェクトCSS画素単位の long で返さなければなりません >>8

[15] Screen インターフェイスheight 属性および availHeight 属性は、 文脈オブジェクト高さCSS画素単位の long で返さなければなりません >>8

[20] CSSOM View 仕様書は、 avail* について、 出力装置の「rendering surface」の高さと規定しています >>8。 その「rendering surface」が具体的に何であるかは不明です。 WindowsFirefoxIE は、タスクバーを除いた大きさを返すようです。 CSSOM View に含まれていない availTop および availLeft と併せて、デスクトップ環境の固定の表示要素を除いた実質的な表示領域が元々の意図だったようです。 Chromeavail* でも全体の高さを返すので、 Web互換性のためにはこの差は考慮しなくて構わないようです。

[21] これらの情報は、 fingerprinting vector です。

演算

[25] 画面写真

関連

多画面

歴史

[1] 次の属性JavaScript 1.2 で導入されました。

[2] screen - MDC ( 版) https://developer.mozilla.org/Ja/DOM/Window.screen

[9] availTop, availLeftGeckoWebKit にはありますが、 WinIE7Opera 9.52 にはありません。

[73] screen.topscreen.leftGecko にはありますが、 WebKitOpera 9.52WinIE7 にはありません。

[10] window.screen.availTop - MDC ( 版) https://developer.mozilla.org/en/DOM/window.screen.availTop

[3] FirefoxSafariマルチディスプレイに対応しているみたいです (Windows Vista で確認)。 width、height 系だけでなく、top、left 系もディスプレイにより変化します。

当該ブラウザー窓の中央あたりが属するディスプレイについての情報を返しているっぽいです。 タスクバーの有無によって avail もちゃんと適当な値になります。

両ブラウザーとも一致するのは偶然でしょうか、それとも OSAPI の仕様でしょうか。

OperaWinIE は対応していません。

[4] [whatwg] Processing the zoom level - MS extensions to window.screen ( ( 版)) http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2010-November/029073.html

[5] The Screen Orientation API ( ( 版)) http://www.w3.org/TR/2012/WD-screen-orientation-20120522/

[6] The Screen Orientation API ( ( 版)) http://www.w3.org/TR/2012/WD-screen-orientation-20121206/

[7] The Screen Orientation API ( ( 版)) http://www.w3.org/TR/2014/WD-screen-orientation-20140220/

[28] [cssom-view] Make window.open's features use Web-exposed screen area (zcorpan著, ) https://github.com/w3c/csswg-drafts/commit/80c0561f714b96ae696d17f46774b26c1d251e90