4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

スマホ画面の横揺れ修正

Last updated at Posted at 2017-10-02

楽天などのモールのheaderを100%にしている店舗から、横スクロールバーが出ると連絡があったので対策方法を紹介します。

基本的な対策方法

まず、HTML要素に対して横スクロールを無効にする方法を試してみましょう。

css
html {
	overflow-x: hidden;
}

縦スクロールも無効にしたい場合

場合によっては、縦スクロールも無効にしたいことがあるかもしれません。その場合は、以下のCSSを使用します。

css
body {
    overflow-y: hidden;
}

追加の対策方法

上記のCSSを追加しても効果がない場合は、以下のように-webkit-overflow-scrollingプロパティを追加してみてください。これにより、モバイルブラウザでのスクロールの滑らかさを制御することができます。

css
html {
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
}

body {
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
}

補足情報

注意点:

overflow-x: hidden;を使用することで、横スクロールバーが表示されなくなりますが、内容が画面幅を超える場合には見えなくなる可能性があります。
overflow-y: hidden;は縦スクロールも無効にするため、コンテンツが画面に収まりきらない場合には注意が必要です。

最新のブラウザ対応:

上記のコードは主要なモダンブラウザ(Chrome、Firefox、Safari、Edge)で動作しますが、古いバージョンのブラウザではサポートされていない可能性があります。必要に応じてベンダープレフィックスを追加してください。

横スクロールバーが表示される場合

ヘッダーを100%に設定している場合に横スクロールバーが表示される問題を解決するには、overflow-x: hidden;を使用して横スクロールを無効にします。効果がない場合は、-webkit-overflow-scrollingプロパティを追加してモバイルブラウザでの滑らかなスクロールをサポートすることを検討してください。

4
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?