From e08472d84826eecece44aa6fe4500876e087865e Mon Sep 17 00:00:00 2001 From: Masahiro FUJIMOTO Date: Sat, 25 Dec 2021 00:10:34 +0900 Subject: 2021/08/13 時点の英語版に同期 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../css/layout_cookbook/sticky_footers/index.md | 82 ++++++++++------------ 1 file changed, 38 insertions(+), 44 deletions(-) diff --git a/files/ja/web/css/layout_cookbook/sticky_footers/index.md b/files/ja/web/css/layout_cookbook/sticky_footers/index.md index 07ce9b5e34..6ffdcfabd3 100644 --- a/files/ja/web/css/layout_cookbook/sticky_footers/index.md +++ b/files/ja/web/css/layout_cookbook/sticky_footers/index.md @@ -1,77 +1,71 @@ --- -title: 固定フッター +title: 張りつくフッター slug: Web/CSS/Layout_cookbook/Sticky_footers tags: - CSS - - Guide - - Layout - - cookbook - - flexbox - - grid - - sticky footer + - ガイド + - レイアウト + - 料理帳 + - フレックスボックス + - グリッド + - 張りつくフッター translation_of: Web/CSS/Layout_cookbook/Sticky_footers --- -
{{CSSRef}}
+{{CSSRef}} -

固定フッターのパターンは、コンテンツがビューポートの高さより短い場合に、ページのフッターがビューポートの下部に「固定」されるパターンです。 このレシピでこれを作成するためのいくつかのテクニックを見ていきます。

+張りつくフッターのパターンは、コンテンツがビューポートの高さより短い場合に、ページのフッターがビューポートの下部に「張りつく」パターンです。 このレシピでこれを作成するためのいくつかのテクニックを見ていきます。 -

ボックスの底に押し込まれた張り付くフッター

+![ボックスの底に押し込まれた張りつくフッター](https://mdn.mozillademos.org/files/16184/cookbook-footer.png) -

要件

+## 要件 -

固定フッターのパターンは、次の要件を満たす必要があります。

+張りつくフッターのパターンは、次の要件を満たす必要があります。 - +- コンテンツが短い場合、フッターはビューポートの下部に張りつきます。 +- ページのコンテンツがビューポートの下部を超えて広がっている場合、フッターは通常どおりコンテンツの下に配置されます。 -

レシピ

+## レシピ -

{{EmbedGHLiveSample("css-examples/css-cookbook/sticky-footer.html", '100%', 720)}}

+{{EmbedGHLiveSample("css-examples/css-cookbook/sticky-footer.html", '100%', 720)}} -
-

この例をダウンロードする

-
+> **Callout:** +> +> [この例をダウンロード](https://github.com/mdn/css-examples/blob/master/css-cookbook/sticky-footer--download.html) -
-

: この例と以下の例では、ライブ例がうまくいくように、min-height: 100% に設定された wrapper を使用しています。 また、{{htmlelement("body")}} で {{cssxref("min-height")}} を 100vh に設定し、それをグリッドコンテナとして使用することで、ページ全体でこれを実現することもできます。

-
+> **Note:** この例と以下の例では、ライブ例がうまくいくように、 wrapper に `min-height: 100%` に設定して使用しています。 また、{{htmlelement("body")}} の {{cssxref("min-height")}} を `100vh` に設定し、それをグリッドコンテナーとして使用することで、ページ全体でこれを実現することもできます。 -

行った選択

+## 行った選択 -

上記の例では、CSS グリッドレイアウトを使用して固定フッターを実現しています。 .wrapper の最小の高さは 100% です。 つまり、コンテナーの高さと同じ高さになります。 次に、レイアウトの各部分につき 1 行で、3 行 1 列のグリッドレイアウトを作成します。

+上記の例では、CSS グリッドレイアウトを使用して張りつくフッターを実現しています。 `.wrapper` の最小の高さは `100%` です。 つまり、コンテナーの高さと同じ高さになります。 次に、レイアウトの各部分につき 1 行で、3 行 1 列のグリッドレイアウトを作成します。 -

グリッドの自動配置では、項目がソース順に配置されるため、ヘッダーは最初の自動サイズ調整トラックに入り、メインコンテンツは 1fr トラックに、フッターは最後の自動サイズ調整トラックに入ります。1fr トラックは使用可能なスペースをすべて占有するため、ギャップを埋めるように大きくなります。

+グリッドの自動配置では、アイテムがソース順に配置されるため、ヘッダーは最初の自動サイズ調整トラックに入り、メインコンテンツは `1fr` トラックに、フッターは最後の自動サイズ調整トラックに入ります。`1fr` トラックは使用可能な空間をすべて占有するため、隙間を埋めるように大きくなります。 -

代替方法

+## 代替策 -

グリッドレイアウトをサポートしていないブラウザーとの互換性が必要な場合は、フレックスボックスを使用して固定フッターを作成することもできます。

+グリッドレイアウトに対応していないブラウザーとの互換性が必要な場合は、フレックスボックスを使用して張りつくフッターを作成することもできます。 -

{{EmbedGHLiveSample("css-examples/css-cookbook/sticky-footer-flexbox.html", '100%', 720)}}

+{{EmbedGHLiveSample("css-examples/css-cookbook/sticky-footer-flexbox.html", '100%', 720)}} -

フレックスボックスの例は同じように始まりますが、.wrapper では display: grid ではなく display: flex を使用し、flex-directioncolumn に設定します。次に、メインコンテンツを flex-grow: 1 に設定し、他の2つの要素を flex-shrink: 0 に設定します — これにより、コンテンツがメイン領域いっぱいになったときにそれらが小さく縮小されるのを防ぎます。

+フレックスボックスの例は同じように始まりますが、`.wrapper` では `display: grid` ではなく `display: flex` を使用し、`flex-direction` を `column` に設定します。次に、メインコンテンツを `flex-grow: 1` に設定し、他の 2 つの要素を `flex-shrink: 0` に設定します。これにより、コンテンツがメイン領域いっぱいになったときに、それらが縮小されるのを防ぎます。 -

ブラウザー実装状況

+## ブラウザーの互換性 -

grid-template-rows

+#### grid-template-rows -

{{Compat("css.properties.grid-template-rows")}}

+{{Compat("css.properties.grid-template-rows")}} -

flex-direction

+#### flex-direction -

{{Compat("css.properties.flex-direction")}}

+{{Compat("css.properties.flex-direction")}} -

flex-grow

+#### flex-grow -

{{Compat("css.properties.flex-grow")}}

+{{Compat("css.properties.flex-grow")}} -

flex-shrink

+#### flex-shrink -

{{Compat("css.properties.flex-shrink")}}

+{{Compat("css.properties.flex-shrink")}} -

MDN にある資料

+## MDN の関連資料 - +- [グリッドレイアウトの基本概念](/ja/docs/Web/CSS/CSS_Grid_Layout/Basic_Concepts_of_Grid_Layout) -- cgit v1.2.3-54-g00ecf