Viewport: How to get viewport size.
document.documentElement.clientWidth and is
regarded as cross-browser compatible.
and equally compatible.
The tables below compare these live against the inner/outer methods to determine the most accurate method:
verge wins because it
to accurately match
Device: How to get device size.
window.screen.width for device width
window.screen.height for device height.
give you the device size minus UI taskbars. (Try on an iPhone.)
Device size is static and does not change when the page is resized or rotated.
Document: How to get document size.
Document size methods are often needed in scrolling apps.
Note the difference between
the native properties (especially when the window is wider than the
max-width of the body).
Math.max of 5 numbers to calculate this. For decent cross-browser support,
Math.max of the 3
document.documentElement properties seems to suffice.