目次
background-attachment: fixed
まとめ
ホームページ ウェブフロントエンド htmlチュートリアル CSSに関するヒントをいくつか紹介します!ページの見た目が悪いです。 _html/css_WEB-ITnose

CSSに関するヒントをいくつか紹介します!ページの見た目が悪いです。 _html/css_WEB-ITnose

Jun 24, 2016 am 11:45 AM

いわゆる「視差」効果を備えた Web サイトは、かなり前から人気があります。 この効果について聞いたことがない方のために付け加えておきますが、主にさまざまな画像が含まれ、さまざまな方向に移動または重ねられます。これにより、訪問者の注意を引く素晴らしい光学効果が得られます。

Web デザインにおいて、Web サイトを実装する最も一般的な方法は、それを実現するために jQuery プラグインを追加することです。残念ながら、これを行うといくつかの欠点があります。これらのプラグインは、スクロール イベントのウィンドウ ターゲットにイベント ハンドラーをアタッチするため、JavaScript による大量のイベント処理が行われます (スクロール イベントの処理はパフォーマンスの問題を引き起こしやすいため、慎重に検討する必要があります)。上のレイヤーの位置、画像の背景が計算されてさまざまな要素に設定され、さらに多くの DOM 操作が発生します。

要約: JavaScript を使用したパララックスにより、Web サイトのスクロール パフォーマンスが急速に低下する可能性があります。

background-attachment: fixed

知っている人はほとんどいないでしょうが、この効果は CSS 経由でも実行できるということです。以下の例を見てください:

background-attachment を使用したペンの視差を参照: CodePen で Stefan Judis (@stefanjudis) によって修正されました。

この視差効果を得るには、背景画像がさまざまな要素に配置されます。これらの要素には、background-attachment:fixed の追加定義が必要です。背景画像の位置は、background-attachment を定義することで変更できます。

scrollプロパティの初期値は基本的に要素に対して画像の位置が固定されることを意味します。特別なことは何もなく、この動作は誰もが知っています。 Web サイトの背景画像や、ユーザーが上下にスクロールするときのその他のアクション。

興味深いのは、background-attachment:fixed の設定です。固定は、背景画像の位置が要素に応じて固定されず、ビューポートに固定されることを定義します。これは、どのようにスクロールしても、画像は視覚的に同じ位置にあることを意味します。これにより、優れた視覚的な視差効果が得られます。

実際の実装を簡単に確認してみましょう:

<!-- Four containers for setting the background images --><div class="parallax">  <div class="bg__foo">foo</div>  <div class="bg__bar">bar</div>  <div class="bg__baz">baz</div>  <div class="bg__bazz">bazz</div></div>// setting base styles to image containers[class*="bg__"] {  height: 50vh;  text-indent: -9999px;  /* fix background */  background-attachment: fixed;  /* center it */  background-position: center center;  /* Scale it nicely to the element */  background-size: cover;  /* just make it look a bit better ;) */  &:nth-child(2n) {    box-shadow: inset 0 0 1em #111;  }}.bg__foo {  background-image: url(    https://s3-us-west-2.amazonaws.com/s.cdpn.io/30354/parallax1.jpg  );}.bg__bar {  background-image: url(    https://s3-us-west-2.amazonaws.com/s.cdpn.io/30354/parallax2.jpg  );}.bg__baz {  background-image: url(    https://s3-us-west-2.amazonaws.com/s.cdpn.io/30354/parallax3.jpg  );}.bg__bazz {  height: 100vh;  background-image: url(    https://s3-us-west-2.amazonaws.com/s.cdpn.io/30354/parallax1.jpg  );}
ログイン後にコピー

几乎全球兼容性。它已经在IE9和Android 2.1支持。
ログイン後にコピー

まとめ

私は個人的に JavaScript ソリューションよりも CSS ソリューションを好みます。これは私の好みの完璧な例です。ロジックや追加の DOM 操作は必要ないため、ソリューション全体が優れたものになります。ただし、視差効果を扱う際に留意すべきことが 1 つあります。

この CSS ソリューションにもやるべきことがたくさんあります。背景添付: 修正すると、ブラウザーで行う必要のある描画が増加します。これにより、パフォーマンスに影響があり、FPS スクロールが低下する可能性があります (60fps ターゲットを覚えていますか?)。したがって、これらのことを行うときは、常に Chrome の FPS メーターに注目することをお勧めします。

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

ホット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ヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

&lt; Progress&gt;の目的は何ですか 要素? &lt; Progress&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:34 PM

この記事では、HTML&lt; Progress&gt;について説明します。要素、その目的、スタイリング、および&lt; meter&gt;との違い要素。主な焦点は、&lt; Progress&gt;を使用することです。タスクの完了と&lt; Meter&gt; statiの場合

&lt; datalist&gt;の目的は何ですか 要素? &lt; datalist&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:33 PM

この記事では、HTML&lt; Datalist&GT;について説明します。オートコンプリートの提案を提供し、ユーザーエクスペリエンスの改善、エラーの削減によりフォームを強化する要素。

HTML5のクロスブラウザー互換性のベストプラクティスは何ですか? HTML5のクロスブラウザー互換性のベストプラクティスは何ですか? Mar 17, 2025 pm 12:20 PM

記事では、HTML5クロスブラウザーの互換性を確保するためのベストプラクティスについて説明し、機能検出、プログレッシブエンハンスメント、およびテスト方法に焦点を当てています。

&lt; meter&gt;の目的は何ですか 要素? &lt; meter&gt;の目的は何ですか 要素? Mar 21, 2025 pm 12:35 PM

この記事では、html&lt; meter&gt;について説明します。要素は、範囲内でスカラーまたは分数値を表示するために使用され、Web開発におけるその一般的なアプリケーション。それは差別化&lt; Meter&gt; &lt; Progress&gt;およびex

HTML5フォーム検証属性を使用してユーザー入力を検証するにはどうすればよいですか? HTML5フォーム検証属性を使用してユーザー入力を検証するにはどうすればよいですか? Mar 17, 2025 pm 12:27 PM

この記事では、ブラウザのユーザー入力を直接検証するために、必要、パターン、MIN、MAX、および長さの制限などのHTML5フォーム検証属性を使用して説明します。

ビューポートメタタグとは何ですか?レスポンシブデザインにとってなぜそれが重要なのですか? ビューポートメタタグとは何ですか?レスポンシブデザインにとってなぜそれが重要なのですか? Mar 20, 2025 pm 05:56 PM

この記事では、モバイルデバイスのレスポンシブWebデザインに不可欠なViewportメタタグについて説明します。適切な使用により、最適なコンテンツのスケーリングとユーザーの相互作用が保証され、誤用が設計とアクセシビリティの問題につながる可能性があることを説明しています。

&lt; iframe&gt;の目的は何ですか タグ?使用する際のセキュリティ上の考慮事項は何ですか? &lt; iframe&gt;の目的は何ですか タグ?使用する際のセキュリティ上の考慮事項は何ですか? Mar 20, 2025 pm 06:05 PM

この記事では、&lt; iframe&gt;外部コンテンツをWebページ、その一般的な用途、セキュリティリスク、およびオブジェクトタグやAPIなどの代替案に埋め込む際のタグの目的。

HTMLは初心者のために簡単に学ぶことができますか? HTMLは初心者のために簡単に学ぶことができますか? Apr 07, 2025 am 12:11 AM

HTMLは、簡単に学習しやすく、結果をすばやく見ることができるため、初心者に適しています。 1)HTMLの学習曲線はスムーズで簡単に開始できます。 2)基本タグをマスターして、Webページの作成を開始します。 3)柔軟性が高く、CSSおよびJavaScriptと組み合わせて使用​​できます。 4)豊富な学習リソースと最新のツールは、学習プロセスをサポートしています。

See all articles