CSS を使用して固定サイドバーを作成する

Susan Sarandon
リリース: 2024-10-22 18:37:02
オリジナル
718 人が閲覧しました

Creating a Sticky Sidebar with CSS

固定サイドバーは、ユーザーが Web ページをスクロールするときに重要なコンテンツを表示し続けるための優れた方法です。この記事では、CSS を使用して固定サイドバーを作成する方法を検討し、期待どおりに機能しない一般的な理由について説明します。

学べること

  • スティッキーサイドバーを実装する方法
  • ポジションの原因となる可能性のある一般的な問題: スティッキーが失敗する

ステップ 1: HTML を設定する

まず、サイドバー レイアウトの基本構造を含むindex.html ファイルを作成します。

<div class="container"><br>
    <aside class="sidebar"><br>
        <h2>Sidebar</h2><br>
        <p>This is a sticky sidebar.</p><br>
    </aside><br>
    <main class="content"><br>
        <h1>Main Content</h1><br>
        <p>Lorem ipsum dolor sit amet...</p><br>
        <!-- Add more content to enable scrolling --><br>
    </main><br>
</div><br>
ログイン後にコピー




ステップ 2: スティッキーサイドバーの CSS を追加する

次に、styles.css ファイルを作成し、次のスタイルを追加します。

ボディ{
フォントファミリー: Arial、サンセリフ;
マージン: 0;
パディング: 0;
}

.container {
表示: フレックス;
}

.sidebar {
位置: スティッキー;
トップ: 0; /* サイドバーは上部に固定されます /
高さ: 100vh; /
ビューポートの全高 */
背景: #f4f4f4;
パディング: 20px;
}

.content {
パディング: 20px;
フレックス: 1; /* 残りのスペースを取得します /
高さ: 200vh; /
コンテンツをスクロールできる高さにします */
}

スティッキー ウィジェットのサンプルを表示します

ステップ 3: スティッキー サイドバーをテストする

Web ブラウザでindex.html ファイルを開き、下にスクロールします。メインコンテンツがスクロールしている間、サイドバーがビューポートの上部に貼り付いているのが確認できます。


ポジション: スティッキーが機能しない一般的な理由

スティッキー サイドバーが期待どおりに機能しない場合は、次の潜在的な問題を確認してください。

  • 親のオーバーフロー: スティッキー要素の親要素に overflow: hidden、overflow: auto、または overflow:scroll がある場合、スティッキーの動作は機能しません。親コンテナがオーバーフローを許可していることを確認してください。

  • スティッキー要素の高さ: スティッキー要素には定義された高さが必要です。高さが設定されていない場合、またはビューポートの高さより低い場合、期待どおりに動作しない可能性があります。

  • 間違った配置: スティッキー要素には最上位のプロパティを設定する必要があります。これがないと、要素はどこに貼り付けるべきかわかりません。

  • 表示プロパティ: スティッキー要素が表示: なしまたは表示: インラインに設定されていないことを確認します。これらは位置決めを妨げる可能性があります。

  • ブラウザの互換性: 最新のブラウザのほとんどはposition: Stickyをサポートしていますが、互換性のあるブラウザを使用していることを確認し、ブラウザ固有の問題がないか確認してください。


結論

CSS を使用して固定サイドバーを作成することに成功しました。 Position: Sticky の動作を妨げる一般的な落とし穴を理解することで、発生する問題のトラブルシューティングを行うことができます。さまざまなレイアウトやスタイルを試して、固定配置によって Web デザインがどのように向上するかを確認してください。

以上がCSS を使用して固定サイドバーを作成するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!