WordPress

WordPress★IE11でマウススクロールするとfixedで固定した背景画像がガタつくバグを修正

投稿日:

windows8+IE11とwindows10-IE11という閲覧条件のクライアントさまから、
「マウスでスクロールすると画像がガクガクしてるよ!」との報告。
急いで、原因を探ることになりました。

このページのもくじ

原因

発生条件は、CSSで背景画像に
position : fixed
background-attachment : fixed
どちらかを適用した場合に起こるようです。
この事象は、ページをマウスでスクロールした場合に起きて、スクロールバーを使った場合には発生しません。

Chrome・Firefox・Edge・Safariなどでは普通に見れますが、IEの時はマウスでページをスクロールすると、ページ中の固定背景画像がカクつきます。(泣)

この現象が起こるのは、IE(Internet Explorer)に実装されている「スムーズスクロール」が原因だそうです。
「スムーズスクロール」とは、マウスホイールを回転させると1行ずつ画面をスクロールさせるという機能で、デフォルトではONになっています。解除するには「インターネットオプション」から「詳細設定」「スムーズスクロールを使用する」のチェックを外す事で解決できます。

でも、これは個人設定なので、制作者側から操作する事ができない部分。
クライアントや閲覧者に「設定を直して」ともいえないし。。。

 

WordPressでの解決策

対処法をググるとネット上にいくつか紹介されていました。
いくつか試したところ、下のコードが有効でした。
掲載先のサイトがなくなると困るのでメモしておきます。

footer.phpの</body>ボディの閉じタグの直前あたりにそのまま貼り付けました。

<!--IE11とEdgeのバグ修正 マウススクロールで背景画像がガタつく-->
<script>
if(navigator.userAgent.match(/MSIE 10/i) || navigator.userAgent.match(/Trident\/7\./) || navigator.userAgent.match(/Edge\/12\./)) {
$('body').on("mousewheel", function () {
event.preventDefault();
var wd = event.wheelDelta;
var csp = window.pageYOffset;
window.scrollTo(0, csp - wd);
});
}
</script>

 

テストしたところ、カクカクとガタついていた背景画像がピタッと止まってくれました!

本サイトの内容に誤りや不正確な記述がある場合やサンプルに基づくいかなる結果も一切の責任を負いかねますので、あらかじめご了承ください。

-WordPress

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

no image

WordPressサイト構築★プラグインを加える その1

新しくwordpressサイトを構築するためにやったことの備忘録。 ******************************* 追加したプラグイン ************************ …

WP★flamingo 受信メッセージの一覧表示で「件名」にフォームのタイトルを表示させたい!

受信メッセージの一覧表示で「件名」にフォームのタイトルを表示させたい! 件名のところに[your-subject]じゃなくて、フォームのタイトル名を表示させる方法を調べてみました。 flamingoの …

WordPress★Gutenbergにカスタムブロックをつくる 1

Gutenbergになったら、「TinyMCE テンプレート」というテンプレートプラグインが使えなくなってしまいました。 あらかじめ設定したひな形を呼び出して使えるのでとても便利だったのに。。。 この …

WordPress★オリジナルテーマにサムネイル画像を設定する

  オリジナルテーマを作ったときに、 「外観」>「テーマ」の一覧表示でサムネイル画像が出るようにする方法。 今回のWordPressのバージョンは4.7.3です。 何も設定してなければ、 サ …

WP★フロントページの背景色を変更する★Twenty Seventeenをカスタマイズ04

フロントページの背景色をパネルごとに変更する方法 フロントページを複数指定している場合、設定した固定ページを順番に表示させています。 このとき 各セクションごとに背景色を変更する方法です。 CSSを追 …

サイト制作・グラフィック制作をしているデザイナーです。制作で躓いたことの備忘録としてこのブログを始めました。
たくさんの検索結果から、実際に何度も何度も自分で試してみて、自分に合うなと思った方法やうまくいった方法をこのブログに書き留めています。
プログラム関係のことはもっぱらコピペ派。
自分でゴリゴリ書くことはできません。。。プログラムが分かる人がうらやましいです。
そんな私でもなんとかサイト制作ができるのはグーグル先生と貴重な情報をおしげもなく公開してくださっているたくさんの方々のおかげ。
有志のみなさまに日々感謝しつつ制作させていただいています。