検索
ホームページウェブフロントエンドCSSチュートリアル純粋な CSS を使用して Web ページでスムーズなスクロールの背景グラデーション効果を実現する方法

純粋な CSS を使用して Web ページでスムーズなスクロールの背景グラデーション効果を実現する方法

純粋な CSS を使用して Web ページのスムーズなスクロールの背景グラデーション効果を実現する方法

1. はじめに

Web デザインでは、背景のグラデーション効果が使用されます。ウェブサイトに使用できます。美しさとダイナミックさを追加します。背景のグラデーションをスムーズにスクロールすると、Web ページがより魅力的になり、ユーザーに快適なブラウジング体験を与えることができます。この記事では、純粋な CSS を使用して Web ページのスムーズなスクロールの背景グラデーション効果を実現する方法を紹介し、具体的なコード例を示します。

2. 背景グラデーション効果の実現原理

スムーズスクロールの背景グラデーション効果を実現する前に、まず背景グラデーションの実現原理を理解します。 CSS では、背景のグラデーション効果は、linear-gradient() 関数を通じて実現できます。この関数は開始色と終了色を受け入れ、選択された方向と位置に基づいてグラデーションを塗りつぶします。

3. スムーズなスクロールの背景グラデーション効果を実現する手順

  1. スクロール効果のあるコンテナを作成します。
<div class="container">
  <!-- 网页内容 -->
</div>
.container {
  height: 100vh;
  overflow-y: scroll;
}

コンテナは vh 単位を使用して高さをビューポートの高さに設定し、overflow-y 属性をスクロールに設定して垂直スクロール効果を実現します。

  1. 背景のグラデーション効果を追加します。
.container {
  background: linear-gradient(to bottom, #000000, #ffffff);
}

コンテナの CSS スタイルで、背景を開始色が黒 (#000000)、終了色が白 (#ffffff) の線形グラデーションに設定します。方向は下に設定され、上から下へのグラデーションを表します。

  1. スクロール イベント リスナーを追加します。

JavaScript を介してスクロール イベント リスナーをコンテナに追加し、スクロール プロセス中に背景のグラデーションの位置を更新します。

const container = document.querySelector('.container');

container.addEventListener('scroll', () => {
  const scrollTop = container.scrollTop;
  const scrollHeight = container.scrollHeight;
  const windowHeight = window.innerHeight;
  const progress = (scrollTop / (scrollHeight - windowHeight)) * 100;

  container.style.backgroundPositionY = `${progress}%`;
});

スクロール イベントのコールバック関数では、コンテナのスクロール位置scrollTop、コンテナの合計高さscrollHeight、ビューポートの高さwindowHeightを取得し、それに応じて背景のグラデーションの位置を更新します。スクロールの進行状況。割合の進行を計算することにより、背景のグラデーション位置のスムーズなスクロール効果が実現されます。最後に、backgroundPositionY プロパティを設定して、更新された変数を背景のグラデーションに適用します。

4. 完全なコード例

<!DOCTYPE html>
<html>
<head>
  <title>平滑滚动背景渐变效果</title>
  <style>
    .container {
      height: 100vh;
      overflow-y: scroll;
      background: linear-gradient(to bottom, #000000, #ffffff);
    }
  </style>
</head>
<body>
  <div class="container">
    <!-- 网页内容 -->
  </div>

  <script>
    const container = document.querySelector('.container');

    container.addEventListener('scroll', () => {
      const scrollTop = container.scrollTop;
      const scrollHeight = container.scrollHeight;
      const windowHeight = window.innerHeight;
      const progress = (scrollTop / (scrollHeight - windowHeight)) * 100;

      container.style.backgroundPositionY = `${progress}%`;
    });
  </script>
</body>
</html>

上記は、純粋な CSS を使用して Web ページのスムーズなスクロールの背景グラデーション効果を実現するための具体的な手順とコード例です。上記の方法により、Web サイトに動的な背景のグラデーション効果を追加して、ユーザーのブラウジング エクスペリエンスを向上させることができます。この記事があなたのお役に立てば幸いです。

以上が純粋な CSS を使用して Web ページでスムーズなスクロールの背景グラデーション効果を実現する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
スライドアウトフッタースライドアウトフッターApr 09, 2025 am 11:50 AM

マークアップと呼ばれる魅力的な新しいサイトが起動しました。キャッチフレーズ:Big Techがあなたを見ています。ビッグテクノロジーを見ています。 Upstatementからの素晴らしい仕事。

好きなページ好きなページApr 09, 2025 am 11:47 AM

先日、JavaScriptでRSSフィードを解析することについて投稿しました。また、RSSのセットアップについて、Feedbinがその中心にある方法について話していることについても投稿しました。

Sanity.ioのためにCodepen Gutenberg Embed Blockを再現しますSanity.ioのためにCodepen Gutenberg Embed Blockを再現しますApr 09, 2025 am 11:43 AM

Chris CoyierのWordPressのGutenbergエディターの実装に触発された、Sanity StudioのプレビューでカスタムCodepenブロックを作成する方法を学びます。

CSSでラインチャートを作成する方法CSSでラインチャートを作成する方法Apr 09, 2025 am 11:36 AM

ライン、バー、パイチャートは、ダッシュボードのパンとバターであ​​り、データ視覚化ツールキットの基本的なコンポーネントです。確かに、SVGを使用できます

SASSをプログラミングして、アクセス可能な色の組み合わせを作成しますSASSをプログラミングして、アクセス可能な色の組み合わせを作成しますApr 09, 2025 am 11:30 AM

私たちは常にWebをよりアクセスしやすくしたいと考えています。色のコントラストは単なる数学なので、SASSはデザイナーが見逃したかもしれないエッジケースをカバーするのに役立ちます。

SVGでタータンパターンを生成する静的サイトを作成する方法SVGでタータンパターンを生成する静的サイトを作成する方法Apr 09, 2025 am 11:29 AM

タータンは、スコットランド、特にファッショナブルなキルトに通常関連する模様のある布です。 Tartanify.comでは、5,000を超えるTartanを集めました

PHPテンプレートのフォローアップPHPテンプレートのフォローアップApr 09, 2025 am 11:14 AM

少し前に、PHPのテンプレートについてJust Php(基本的にHeredoc構文)に投稿しました。私は文字通り、いくつかの超基本にその手法を文字通り使用しています

ブートストラップコンポーネントを備えたモーダルイメージギャラリーの作成ブートストラップコンポーネントを備えたモーダルイメージギャラリーの作成Apr 09, 2025 am 11:10 AM

他の写真を表示するためにナビゲーションを使用して画像の大きなバージョンを開くWebページの画像をクリックしたことがありますか?

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい