横スクロールさせてる中でモーダルウィンドウを設置した際に、ブラウザ(Mac Chrome)では大丈夫だったのですが、実機iPhoneで挙動がおかしくなってしまいました。
検証してみると、「-webkit-overflow-scrolling: touch;」が、悪さをしていました。
iPhoneで確認ください。
See the Pen 実機iPhoneで「-webkit-overflow-scrolling: touch; 」のせいでモーダルがおかしくなる by takapen (@takapen) on CodePen.
指定しないものと、以下3つのパターンを用意しました。
._webkit-scrolling { -webkit-overflow-scrolling: touch;/* これ */ } ._scrolling { overflow-scrolling: touch; } ._both-scrolling { -webkit-overflow-scrolling: touch;/* これ */ overflow-scrolling: touch; }
実機iPhoneで見てみると、「-webkit-overflow-scrolling: touch;」があるときだけ、本来画面全体に表示したいモーダルが、横スライドの枠内に表示されてしまっています。
ちなみに「overflow-scrolling: touch;」がなくても慣性スクロールができているようで、調べてみるとsafari13(iOS 13)からデフォで慣性スクロールしてくれるようになったそうです。
参照:https://developer.apple.com/documentation/safari_release_notes/safari_13_release_notes#3314682