niwaka-web

webサイト構築関連のにわか知識集

CSS

【CSS】スマホでbackground-attachment: fixed;が効かない【メモ】

投稿日:

ニワカが個人的に使いこなせていないCSSを覚えるための個人的メモです。
CSSでパララックス(視差)の勉強していた際のメモです。
iosでbackground-attachment: fixed;は仕様?バグ?で使用出来ないようです。
androidでもダメでした。どちらもブラウザによっては出来るのかもしれませんが。

実装例

説明よりは実際の状態を見た方が早いかと思うので、まずサンプル。

See the Pen iosでbackground-attachment: fixed;が効かない by niwaka-web (@niwaka-web) on CodePen.

PC上では、背景が固定されてパララックス風に表示されます。
スマホでは、背景が固定されず普通に画像が並んでる風にしか見えません。
最初iOSだけの仕様かと思いましたが、android系もダメなようですね。
参照:Can I use

対応策

googleなどで検索して調べるとスマホ用の対応策として「::before」などの擬似要素で代用する記事がありますが、こちらは全面背景(ページ全体の背景)として使用する際の策のようです。
ですので、上記のサンプルのような複数枚の画像を使用するものには対応していないと思われます。
背景画像が一枚で良ければ「::before」などの擬似要素で対応し、複数枚の使用の場合は諦めて他の対応を考えた方が良さそうです。

メモ

ついでに、background-attachment: fixed;指定している時にbackground-size: cover;を指定してもiosだと、画像が拡大されるとか挙動がおかしいとか問題ありそう。

-CSS
-

執筆者:


comment

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

関連記事

【CSS】画像とテキストをレスポンシブでPCで左右交互にスマホで上下にレイアウト【メモ】

今回の記事は、前回の記事の続きになります。 レスポンシブサイトでよく見かける画像とテキストを左右交互に、スマホで上下に配置してくレイアウトをflexboxを利用して実装する方法の個人的メモ。 ようやく …

【Bootstrap4】グリッドレイアウト(配置)

Bootstrap4のグリッドレイアウトの説明は長いので配置も別ページに。 Bootsatrap4からはFlexbox配置ユーティリティを使用して、縦と横の列を整列させることができるようになりました。 …

【CSS】flexboxで画像とテキストを横並び、縦並びにレイアウト【メモ】

レスポンシブサイトでよく見かける画像とテキストを左右交互に、スマホで上下に配置してくレイアウトをflexboxを利用して実装する方法の個人的メモ。 ようやく最近使用するようになったflexboxの学習 …

【CSS】子セレクタの使い方の覚書

ニワカが個人的に使いこなせていないCSSセレクタを覚えるための個人的メモです。 サイト作成をする際にCSSは何百行、何千行にもなることがあるので、出来るだけわかりやく汎用的に書ける様にするために覚えて …

Font Awesome 5の使い方【SVG with JavaScript編】

Font Awesome 5の使い方としては、SVG with JavaScript(JavaScriptとSVGによる描画)とWeb Fonts with CSS(CSSとwebフォントによる描画) …