The viewport is set incorrectly when the viewport meta tag is specified with
width=device-width, and the page contains an element (e.g. div tag) that is wider than the desired viewport’s boundary.
In the screenshot above (courtesy @RWD) you can see that the off-screen menu actually appears on-screen in iOS9. Apple changed how iOS9 responds to
width=device-width as it, according to them, got abused too much.
To fix this, append
shrink-to-fit=no to your
viewport meta tag, as such:
<meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no">