innerWidth and outerWidth oddness on desktop

One reason innerWidth could be larger than outerWidth is if your browser is zoomed. I got the following results with the browser in fullscreen mode:

zoom  inner  outer
75%   1706   1280
90%   1422   1280
100%  1280   1280
110%  1164   1280

The only way I could get outerWidth to be larger than screen.width is by changing the window width by dragging.


There is a difference between getting of innerWidth and outerWidth. Look at official definitions:

Window.innerWidth: is Width (in pixels) of the browser window viewport including, if rendered, the vertical scrollbar.

Window.outerWidth: The outerWidth attribute must return the width of the client window.

As you can see innerWidth has bound to viewport width, while outerWidth has bound to browser window width.

Therefore outerWidth can be less than innerWidth when your page is just zoomed in, or page view is scaled up. I think you need to state folloving tag in your page:

 <meta name="viewport" content="width=device-width, initial-scale=1">

It will make you page to behave as expected (fit to width limits of screen) in small viewports.

And as a possible cause of large innerWidth is the scripts or styles that can change window dimensions.