フッターを一番下に維持する最善の方法を教えてください_html/css_WEB-ITnose
原文: Quick Tip: The Best Way To Make Sticky Footers
Web ページをレイアウトしているときに、次のような状況に遭遇することがあります。
この問題の原因は、ページのコンテンツが小さすぎてコンテンツ領域を拡張できず、フッターの下に大きな空白スペースが残ってしまうためです。
この記事では、フッターが常にページの下部に表示されるようにする最新の方法を紹介します。
解決策
この問題を解決する最良の方法は、CSS3 によって提供され、適応可能なレイアウトを構築するように設計された高度なレイアウト モデルであるフレックスボックスを使用することです。フレックスボックスにまだ慣れていない場合は、記事の最後にフレックスボックスの理解に役立つ参考資料のリンクがいくつかあります。
デモ ページにはヘッダー、メイン コンテンツ領域、フッターが必要です。以下はページの HTML です。
<body> <header>...</header> <section class="main-content">...</section> <footer>...</footer></body>
の順です。フレックス モードを有効にするには、本文の表示属性を flex に設定し、次に方向属性を列 (デフォルトは行、つまり水平レイアウト) に設定します。また、html 要素と body 要素の高さを 100% に設定して、画面全体に収まるようにします。
html{ height: 100%;}body{ display: flex; flex-direction: column; height: 100%;}
次に、各領域が占めるページ領域を調整する必要があります。これは、実際には 3 つの属性を含む flex 属性によって実現します。
- flex-grow: 同じコンテナ内の割り当て可能な領域に対する要素の割り当て率と拡張率
- flex-shrink: 領域が不十分な場合、要素の収縮率
- flex-basis: 要素の弾性ベース値
ヘッダーとフッターが占有すべきスペースのみを占有し、残りはすべて占有されることを望みます。メインコンテンツ領域にスペースが与えられます
header{ /* 我们希望 header 采用固定的高度,只占用必须的空间 */ /* 0 flex-grow, 0 flex-shrink, auto flex-basis */ flex: 0 0 auto;}.main-content{ /* 将 flex-grow 设置为1,该元素会占用所有的可使用空间 而其他元素该属性值为0,因此不会得到多余的空间*/ /* 1 flex-grow, 0 flex-shrink, auto flex-basis */ flex: 1 0 auto;}footer{ /* 和 header 一样,footer 也采用固定高度*/ /* 0 flex-grow, 0 flex-shrink, auto flex-basis */ flex: 0 0 auto;}
最終的な効果は以下のようになります。中央のピンク色のボタンをクリックしてメインコンテンツを変更すると、フッターが常にページの下部に表示されます。
デモ ページのアドレス: http://demo.tutorialzine.com/2016/03/quick-tip-the-best-way-to-make-sticky-footers/ (を参照)効果を覆す必要があるかもしれません)
結論
あなたが言ったように、レイアウトを最初から構築する場合、flexbox はあなたの右腕のアシスタントになります。ごく一部の例外を除いて、すべての主要なブラウザはフレックスボックスをサポートしています。IE に関しては、IE9 以降のバージョンがサポートされています。
フレックスボックス レイアウト モデルを学習するための優れたチュートリアルとチートシートをいくつか紹介します
- CSS-Trick のフレックス ボックス クイック ガイド
- クールなフレックスボックス テクノロジーの提供に特化した Web サイトウェブサイト: Flexbox によって解決
- 5 分間の対話型チュートリアル

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









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

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

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

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

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

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

HTMLはWeb構造を定義し、CSSはスタイルとレイアウトを担当し、JavaScriptは動的な相互作用を提供します。 3人はWeb開発で職務を遂行し、共同でカラフルなWebサイトを構築します。

Anexampleapalofastartingtaginhtmlis、それはaperginsaparagraph.startingtagsaresentionentientiontheyinitiateelements、definetheirtypes、およびarecrucialforurturingwebpagesandcontingthomedomを構築します。
