カテゴリ: CSS 更新日: 2025/12/15

CSSのbackground-attachment: fixedを完全マスター!初心者でもわかる背景固定の使い方

スクロールに追従しない固定背景の設定方法(background-attachment: fixed)
スクロールに追従しない固定背景の設定方法(background-attachment: fixed)

先生と生徒の会話形式で理解しよう

生徒

「Webページをスクロールしても、背景画像をそのまま固定して表示し続けたいんですが、どうしたらいいですか?」

先生

「それにはCSSのbackground-attachmentプロパティを使います。特にfixedという値を指定すると、スクロールしても背景が固定されて見えるようになりますよ。」

生徒

「それってどういうことですか?イメージが湧かないんですが…」

先生

「それでは実際にコードを見ながら、スクロールに追従しない固定背景の設定方法を一緒に学んでいきましょう!」

1. 背景を固定するとはどういう意味?

1. 背景を固定するとはどういう意味?
1. 背景を固定するとはどういう意味?

背景画像が「固定」されるとは、ページを下にスクロールしても背景が動かず、その場にとどまり続ける状態のことをいいます。

背景画像がページに貼り付いたように動かないので、「パララックス効果(視差効果)」のような演出もできます。

これを実現するのが、CSSプロパティのbackground-attachment: fixedです。

2. CSSで背景画像を固定する方法

2. CSSで背景画像を固定する方法
2. CSSで背景画像を固定する方法

まずは基本的なHTMLとCSSの例を見てみましょう。


<style>
body {
    background-image: url('https://placehold.jp/3d4070/ffffff/1200x800.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center;
    height: 2000px;
    margin: 0;
    font-family: sans-serif;
}
.container {
    background-color: rgba(255, 255, 255, 0.8);
    padding: 30px;
    max-width: 800px;
    margin: 100px auto;
    border-radius: 10px;
}
</style>

<div class="container">
    <h2>固定背景のサンプル</h2>
    <p>このエリアはスクロールしても背景は動きません。</p>
</div>
ブラウザ表示

3. background-attachmentの役割を理解しよう

3. background-attachmentの役割を理解しよう
3. background-attachmentの役割を理解しよう

background-attachmentには3つの主な指定方法があります:

  • scroll:スクロールと一緒に背景が動きます(初期設定)。
  • fixed:背景が固定され、スクロールしても動きません。
  • local:要素内のスクロールに合わせて背景が動きます。

今回はこの中でも最もよく使われるfixedを取り上げました。

4. 背景を全画面で表示して固定するには?

4. 背景を全画面で表示して固定するには?
4. 背景を全画面で表示して固定するには?

背景画像を画面全体に表示したいときは、background-size: cover;を組み合わせます。

これにより、背景画像がウィンドウの大きさにフィットするように調整されます。

5. スマホでbackground-attachment: fixedが効かない?

5. スマホでbackground-attachment: fixedが効かない?
5. スマホでbackground-attachment: fixedが効かない?

スマートフォンや一部のタブレットでは、background-attachment: fixedが効かないことがあります。

これはブラウザの制限によるもので、モバイルでは固定背景がうまく動作しないことがあります。

その場合はJavaScriptでスクロールに合わせて背景位置を調整するなどの対応が必要ですが、初心者のうちは無理に使わず、PC向けデザインに限定するのが無難です。

6. よくある失敗と注意点

6. よくある失敗と注意点
6. よくある失敗と注意点
  • 背景が小さい画像だと繰り返し(リピート)されて見栄えが悪くなる → background-repeat: no-repeat;を使う
  • 画面に背景画像が収まらない → background-size: cover;を使って全体にフィットさせる
  • スマホで動かない → モバイル対応は割り切るか、別の方法を検討

7. 背景固定はどんな場面で使う?

7. 背景固定はどんな場面で使う?
7. 背景固定はどんな場面で使う?

背景固定のテクニックは、次のような場面でよく使われます:

  • かっこいい印象を与えたいランディングページ
  • 写真やイラストを背景にして印象的なデザインにしたいとき
  • Webデザインの演出として背景と前面のテキストの動きを分けたいとき

CSSだけで簡単に実現できるので、初心者にもぜひ使ってほしいテクニックです。

まとめ

まとめ
まとめ

background-attachment: fixedで実現できる背景固定表現を振り返る

この記事では、CSSの background-attachment: fixed を使って、スクロールしても背景画像が動かない「背景固定」の仕組みについて、初心者の方にも分かりやすく解説してきました。 Webページを上下にスクロールしたとき、背景だけがその場に留まり、文字やコンテンツだけが前面で動く演出は、視覚的なインパクトが強く、印象に残りやすいデザインとしてよく利用されます。 このような表現は、CSSの中でも比較的シンプルな記述で実現できるため、HTMLとCSSを学び始めた段階でも取り入れやすいテクニックです。

背景固定の基本となるのが background-attachment プロパティです。 このプロパティは、背景画像がスクロールに対してどのように振る舞うかを指定する役割を持っています。 初期値である scroll は、ページのスクロールに合わせて背景も一緒に動きますが、fixed を指定することで、背景だけを画面に固定した状態にできます。 この違いを理解することが、背景固定を正しく使いこなす第一歩になります。

background-sizeやpositionとの組み合わせが重要

background-attachment: fixed を使う際に欠かせないのが、他の背景関連プロパティとの組み合わせです。 特に background-size: cover; は、背景画像を画面いっぱいに広げ、縦横比を保ちながら表示してくれるため、固定背景との相性が非常に良い指定です。 また background-position: center; を使うことで、背景画像の中心を基準に配置でき、どの画面サイズでも安定した見た目を保ちやすくなります。

これらの指定を適切に組み合わせることで、背景画像が途中で切れてしまったり、意図しない位置に表示されたりする問題を防ぐことができます。 単に fixed を指定するだけでなく、全体のバランスを考えながらCSSを書くことが、実務レベルのWebデザインでは重要になります。

背景固定の基本サンプルをおさらい

ここで、記事内で学んだ内容を踏まえた、背景固定の基本的なサンプルコードを改めて確認してみましょう。 body全体に背景画像を設定し、スクロールしても背景が固定される構成です。


<style>
body {
    background-image: url('https://placehold.jp/5f9ea0/ffffff/1200x800.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center;
    margin: 0;
    font-family: sans-serif;
}
.content {
    background-color: rgba(255, 255, 255, 0.85);
    max-width: 800px;
    margin: 100px auto;
    padding: 30px;
    border-radius: 8px;
}
</style>

<div class="content">
    <h2>背景固定の確認</h2>
    <p>
        このテキスト部分をスクロールしても、背景画像は画面に固定されたまま表示されます。
        background-attachment: fixed を使った基本的な例です。
    </p>
</div>
ブラウザ表示

このように、CSSだけで背景固定の表現を作ることができます。 ただし、スマートフォンや一部のブラウザでは background-attachment: fixed が正しく動作しない場合があるため、使用する場面を選ぶことも大切です。 主にパソコン向けのWebサイトや、デザイン重視のページで活用すると効果的です。

先生と生徒の振り返り会話

生徒

「background-attachment: fixed を使うと、スクロールしても背景が動かない理由がよく分かりました。 思っていたよりシンプルなCSSで実現できるんですね。」

先生

「そうですね。CSSの背景関連プロパティは、組み合わせ次第で見た目が大きく変わります。 fixed はその中でも、デザイン性を高めやすい指定の一つです。」

生徒

「background-size: cover や background-position も一緒に使う理由が理解できました。 ただ固定するだけじゃなく、見た目の調整も大切なんですね。」

先生

「その通りです。背景が主役になるデザインでは、細かい指定が仕上がりを左右します。 まずは基本を押さえて、少しずつ応用していきましょう。」

生徒

「スマホでは動かない場合がある点も覚えておきます。 使う場面を考えながらデザインしてみます。」

先生

「それが大切です。今回学んだ background-attachment: fixed は、 CSSの表現力を広げる良い練習になりますよ。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

CSSのbackground-attachment: fixedとは何ですか?

CSSのbackground-attachment: fixedは、Webページをスクロールしても背景画像が固定されて動かないようにするプロパティです。背景がその場にとどまり続ける演出が可能になります。
2026年最新 スキルアップ・実践セミナー

【60分集中】Flexboxを完全攻略!最新CSS3で「崩れない・迷わない」モダンUI構築セミナー

「魅せる力」をコードで実現。CSS3でモダンWebデザインのプロトタイピングを。

本講座では、単に色を変えるだけではなく、「ユーザーを迷わせないUIデザイン」「崩れないレイアウト設計」の本質を学びます。最新のCSS3とモダンなレイアウト手法を通じて、プロの現場で通用する「美しさと機能性を両立した実装力」を最短距離で習得します。

具体的なワークショップ内容と環境

【つくるもの】
HTMLで作成した骨組みに対し、商用サイトでも採用される「スタイリッシュなカード型UI」や「レスポンシブなナビゲーション」を構築します。色の選定基準や余白(ホワイトスペース)の黄金比など、デザインの理論をコードに落とし込む工程を体験してください。

【開発環境】
フロントエンド開発の標準であるVisual Studio Code (VS Code)を継続使用。CSSの記述を効率化するプラグインや、ブラウザのデベロッパーツール(検証機能)を駆使して、リアルタイムでデザインを微調整するプロのワークフローを再現します。

この60分で得られる3つの技術資産

1. 現代のデファクトスタンダード「Flexbox」

要素の横並びや中央揃えを自由自在に操り、どんなデバイスでも崩れないレスポンシブな配置術を完全理解します。

2. メンテナンス性を高めるCSS設計の基礎

後から修正しやすい「壊れにくいコード」の書き方を伝授。プロの現場で必須となる命名規則の考え方を学びます。

3. パフォーマンスと美しさの両立

画像の最適化や軽量な装飾技法など、ページの表示速度を落とさずに高級感のある演出を行うテクニックを習得します。

※本講座は、HTMLの基礎を終えた後のステップアップ講座です。Webデザイナー、UIデザイナー、フロントエンドエンジニアへの道を切り開く「魅せる技術」を、モクモク独自のパーソナル指導で着実に定着させます。

【60分集中】Flexboxを完全攻略!最新CSS3で「崩れない・迷わない」モダンUI構築セミナー

リラックスしながら、学ぶことが大切です。しっかりと基礎を理解しましょう!

各回少人数・マンツーマン形式で徹底サポート

このセミナーの詳細・お申し込みはこちら
カテゴリの一覧へ
新着記事
New1
Bootstrap
Bootstrapテーブル入門:.table /.table-striped /.table-hover /.table-bordered をやさしく解説
New2
CSS
スマホの文字化け・崩れを防ぐ!メディアクエリで文字の改行と非表示を操る完全ガイド
New3
HTML
HTMLのvideo属性一覧を完全整理!初心者でもわかるposter・preload・loopの使い方
New4
Bootstrap
Bootstrap入力グループ完全ガイド|初心者でもわかる.input-groupの使い方
人気記事
No.1
Java&Spring記事人気No1
CSS
CSSのメディアタイプ完全ガイド!画面表示と印刷用スタイルを切り替える方法
No.2
Java&Spring記事人気No2
CSS
CSSで要素のサイズを自動調整!autoとfit-contentの使い方
No.3
Java&Spring記事人気No3
CSS
CSSのフレックスボックスで使うgapの使い方を完全ガイド!初心者でもわかる余白調整の基本
No.4
Java&Spring記事人気No4
CSS
レスポンシブデザインの要!ブレイクポイントの決め方とCSSの書き方ガイド
No.5
Java&Spring記事人気No5
CSS
CSSのmin-widthとmax-widthの違いを徹底解説!モバイルファースト設計の基本
No.6
Java&Spring記事人気No6
CSS
スマホの向きでデザインが変わる!CSSのorientation(向き)設定ガイド
No.7
Java&Spring記事人気No7
CSS
CSSで要素を消す方法を完全ガイド!display:noneとvisibility:hiddenの違い
No.8
Java&Spring記事人気No8
Bootstrap
Bootstrap Iconsの使い方を完全解説!初心者でもわかるアイコン基本操作ガイド