多くのウェブサイトでは、ユーザーが簡単に検索したり他のページに移動したりできるように、上部にナビゲーション バーが固定されています。 同時に、長い文書をユーザーが閲覧しやすくするために、目次が追加されます。段落のタイトルをクリックすると、段落の場所にジャンプします。 図に示すように: アンカーを使用してディレクトリにジャンプすると、固定ナビゲーション バーによってタイトルが隠れてしまうという問題が発生する可能性があります。 1. アンカー位置決め機構 スクロールバーがない場合、アンカーは無効です。 スクロール バーがある場合、スクロール バーは、アドレス ハッシュ (アドレス内の # 記号の後の内容) に対応するアンカー要素の 2. 解決策 例 ソースコードの例 サンプルオンラインプレビュー (1)パディング+マージン パディングはアンカー要素の配置に影響しますが、マージンはアンカー要素の配置には影響しません。そのため、ジャンプ後のアンカー要素の位置を調整するためにパディングが使用され、レイアウトに対するパディングの影響を相殺するためにマージンのために使用されます。 <h3 class="見出し最初" id="最初"> 1. 出現時期と場所が異なる</h3> 。初め { padding-top: 60px;/* 60pxはナビゲーションバーの高さです*/ 上マージン: -60px; } アドバンテージ このソリューションでは追加の要素を追加する必要はなく、CSS を使用して直接問題を解決できます。 欠点 見出しのドキュメント レベルが段落のドキュメント レベルと一致していない場合、他の要素が見えにくくなる可能性があります。 たとえば、タイトルでは (2)アンカー要素としてスパンまたはタグを使用する 置換されないインライン要素の <h3 class="見出し"> <span id="second" class="title_placeholder"> 2. require/exports は実行時に動的にロードされ、import/export は静的にコンパイルされます</span> </h3> .title_placeholder { パディング上部: 60px; } 欠点 解決策(1)と同じ (3)ダークアンカーポイント 配置する必要がある要素の上に、レイアウトに影響を与えない空のアンカー要素を追加します。 ジャンプ後のアンカー ポイントの位置は要素の <div class="dark_anchor" id="third"></div> <h3 class="見出し"> 3. require/exports は値のコピーを出力しますが、import/export モジュールは値への参照を出力します</h3> .ダークアンカー{ 高さ: 60px; 上マージン: -60px; } アドバンテージ 他の要素のマウス選択には影響しません 欠点 このソリューションでは、配置された要素の たとえば、タイトル (配置された要素) には 20 ピクセルの余白があり、アンカー ポイントがジャンプした後も 20 ピクセルの余白は保持されます。アンカー ポイントがジャンプした後、 (4)ターゲット擬似クラス :target CSS 疑似クラスは、ID が現在の URL フラグメントと一致する一意のページ要素 (ターゲット要素) を表します。 4. 一貫性のない使用 :ターゲット{ パディング上部: 60px; 上マージン: -60px; } このソリューションはソリューション(1)と似ています。特定のアンカーポイント(クラス)にジャンプする場合、アンカーポイント要素は 3. 参考文献 URLアンカーHTML位置決め技術の仕組み、応用と問題点 ウェブページの内部アンカーポイントがジャンプしたときに上下のオフセットを実現する純粋なCSS アンカーポイントが固定位置に遭遇すると 上部の固定ナビゲーション バーによって CSS アンカーの配置がブロックされる問題の解決策に関するこの記事はこれで終わりです。上部の固定ナビゲーション バーによって CSS アンカーの配置がブロックされる問題の関連コンテンツの詳細については、123WORDPRESS.COM で以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
>>: Docker の NFS-Ganesha イメージを使用して NFS サーバーを構築する詳細なプロセス
この記事では、テーブルの作成、フィールドの追加、フィールドの変更、インデックスの追加を行う一般的な ...
フォーム項目を動的に追加するiview の動的なフォーム追加は非常に簡単です。フォーム項目を配列に設...
序文この記事には1. データベースのいくつかの主要な制約2. テーブル間の関係制約:主キー制約: 機...
精度の問題に対する最もわかりやすい説明たとえば、1÷3=0.33333333...という数字は、3が...
Angular入門Angular は、Google が開発したオープンソースの Web フロントエン...
問題の起源docker を使用する場合、残念ながら docker コンテナ内のホストのポート 80 ...
プライベート変数のクロージャ実装プライベート変数は共有されないnew キーワードにより、 perso...
最近、UTF8 エンコードの中国語 Zen Cart Web サイトをデバッグしているときに奇妙な現...
この章では、dockerの下にあるSpring BootプロジェクトでRedisを操作し始めます。準...
目次前提TypeScript と JavaScriptコードエディタの選択TypeScriptを学ぶ...
1. システムインストールパッケージ yum -y インストール make gcc-c++ cmak...
JDBC が MySQL に接続して中国語を処理するときに文字化けする問題の解決方法の詳細説明最近、...
最悪の選択肢は、結果を時間順に並べ替えて最初のものを取ることです。 *から選択 ここで、create...
translate と transition は非常に強力で、習得するのは不可能だといつも感じていま...
コンテナの起動時に Docker コンテナ内のアプリケーション サービスを自動的に起動する場合。 D...