ホームページ ウェブフロントエンド htmlチュートリアル 柔軟なレイアウト (Flex レイアウト) の詳細な紹介

柔軟なレイアウト (Flex レイアウト) の詳細な紹介

Jul 17, 2017 pm 03:03 PM
flex レイアウト きちんとした

1. 柔軟なレイアウト

日常生活では、次のレイアウト タイプをよく使用します:

1. フローティング + 配置

2. アダプティブ (パーセンテージ)

3. レスポンシブ レイアウト

4.できるレイアウト (フレックス レイアウト)

今日整理したいのは、より一般的に使用されるフレキシブル レイアウトですが、ブロック タグとインライン ブロック タグには違いがあります。

{:;
}
input{
  :;
}
ログイン後にコピー

もちろん、お金のようにすべてが万人に好かれるわけではなく、メリットもあればデメリットもあります。

利点: 互換性はすべてのブラウザーをサポートし (Webkit ベースのブラウザーは -webkit- を追加する必要があります)、ユーザーの好みに応じて調整でき、任意のコンテナーを Flex レイアウトとして指定できます。 -webkit-),可以随用户的喜好进行调节,可以将任何一个容器指定为Flex布局。

  缺点:因为弹性布局可调节,所以有巨大的可能性,需要花很多的时间进行调整;有些弹性设计要为IE6单独设计样式,不过……IE6还有多少人在用(⊙﹏⊙)b。

  注意:当我们使用了弹性布局,那么在CSS里的float、clear和vertical-align就会失效。

二、  弹性布局的属性

  首先是作为弹性布局的容器的属性。  

  1.flex-direction属性

 

  flex-direction决定了容器的方向。

div {
  flex-direction: row | row-reverse | column | column-reverse;
}
ログイン後にコピー

  四个值分别为:row(默认值)从左向右、row-reverse从右向左、column从上到下、column-reverse从下到上。

 

  2.flex-wrap属性

 

  默认情况下的布局一般在同一行,当设置了flex-wrap属性之后将自动将排列不下的内容进行换行。

div{
  flex-wrap: nowrap | wrap | wrap-reverse;
}
ログイン後にコピー

  四个值分别为:nowrap(默认值)不换行、wrap向下换行、wrap-reverse向上换行。

 

  3.flex-flow属性

 

  flex-flow属性是以上两种属性的简写形式,默认值是row nowrap。

div {
  flex-flow: <flex-direction> || <flex-wrap>;
}
ログイン後にコピー

  

  4.justify-content属性

 

  justify-content属性定义了在容器方向上的对齐方式。

div {
  justify-content: flex-start | flex-end | center | space-between | space-around;
}
ログイン後にコピー

  flex-start(默认值):向左对齐。

  flex-end:向右对齐。

  center: 居中对齐。

  space-between:两端对齐,每一个子元素等距离间隔,子元素与容器边框无间隔。

  space-around:每个子元素两侧的间隔相等。子元素之间的间隔比子元素与容器边框的间隔大一倍。

 

  5.align-items属性

 

  align-items属性定义在垂直容器方向上的对齐方式。

div {
  align-items: flex-start | flex-end | center | baseline | stretch;
}
ログイン後にコピー

  flex-start:垂直方向的起点对齐。

  flex-end:垂直方向的终点对齐。

  center:垂直方向的中点对齐。

  baseline: 与第一个子元素中文字的基线对齐。

  stretch(

短所: 柔軟なレイアウトは調整可能であるため、大きな可能性があり、調整に多くの時間がかかります; 一部の柔軟なデザインでは IE6 用に別のスタイルが必要ですが...どれだけの人がまだ IE6 を使用しているでしょうか (⊙﹏⊙)b 。

注: フレキシブル レイアウトを使用する場合、CSS の float、clear、vertical-align は無効になります。

2. フレキシブルレイアウトのプロパティ

一つ目は、フレキシブルレイアウトとなるコンテナのプロパティです。

🎜1.flex-direction属性🎜🎜🎜🎜🎜🎜 flex-directionはコンテナの方向を決定します。 🎜🎜
div {
  align-content: flex-start | flex-end | center | space-between | space-around | stretch;
}
ログイン後にコピー
🎜🎜 4つの値は、行(デフォルト値)左から右、行反転右から左、列反転上から下、列反転下から上です。 🎜🎜 🎜🎜 🎜🎜2.flex-wrap 属性 🎜🎜🎜🎜 🎜🎜 デフォルトではレイアウトは通常同一行になります flex-wrap 属性を設定すると、配置できないコンテンツは自動的に折り返されます。 🎜🎜
.son {
  order: <integer>;
}
ログイン後にコピー
ログイン後にコピー
🎜🎜 4つの値は、nowrap(デフォルト値)はラップしない、wrapは下方向にラップ、wrap-reverseは上方向にラップします。 🎜🎜 🎜🎜 🎜🎜3.flex-flow属性🎜🎜🎜🎜🎜🎜 flex-flow属性は上記2つの属性の略称であり、デフォルト値はrow nowrapです。 🎜🎜
.son {
  flex-grow: <number>; /* default 0 */}
ログイン後にコピー
ログイン後にコピー
🎜🎜 🎜🎜 🎜🎜4.justify-content属性🎜🎜🎜🎜 🎜🎜 justify-content属性は、コンテナの方向の配置を定義します。 🎜🎜
.son {
  flex-shrink: <number>; /* default 1 */}
ログイン後にコピー
ログイン後にコピー
🎜🎜 flex-start(デフォルト値): 左揃え。 🎜🎜 flex-end: 右揃え。 🎜🎜 center: 中央揃え。 🎜🎜 Space-between: 両端を揃え、各サブ要素は等間隔で、サブ要素とコンテナの境界線の間に隙間はありません。 🎜🎜 space-around: 各子要素の両側のスペースは等しいです。子要素間の間隔は、子要素とコンテナの境界線の間の間隔の 2 倍です。 align-items 属性は、垂直コンテナ方向の配置を定義します。 🎜🎜
.son {
  align-self: auto | flex-start | flex-end | center | baseline | stretch;
}
ログイン後にコピー
ログイン後にコピー
🎜🎜 flex-start: 開始点を垂直方向に揃えます。 🎜🎜 flex-end: 垂直方向のエンドポイントの位置合わせ。 🎜🎜 center: 垂直方向の中点を揃えます。 🎜🎜 ベースライン: 最初の子要素のテキストのベースラインと位置合わせされます。 🎜🎜 stretch (デフォルト値): 子要素が高さを設定しないか、高さが auto に設定されている場合、コンテナの高さ全体を占めます。 🎜🎜 🎜🎜 🎜🎜6.align-content 属性 🎜🎜🎜🎜 🎜🎜 align-content 属性は、子要素の 2 方向の配置を定義します。 🎜🎜りー🎜

  flex-start:当容器方向子元素刚好填满时,与垂直方向的起点对齐。

  flex-end:当容器方向子元素刚好填满时,与垂直方向的终点对齐。

  center:当容器方向子元素刚好填满时,与垂直方向的中点对齐。

  space-between:当容器方向子元素刚好填满时,垂直方向两端对齐,子元素之间的等距离间隔。

  space-around:两个方向两侧的间隔都相等。所以,轴线之间的间隔比轴线与边框的间隔大一倍。

  stretch(默认值):占满整个垂直方向。

 

  下面就是具有弹性布局容器中子元素的属性

  1.order属性

 

  order属性定义了子元素的排列顺序,数值小的在前。

 

.son {
  order: <integer>;
}
ログイン後にコピー
ログイン後にコピー

 

  

  2.flex-grow属性

 

  flex-grow属性定义了子元素的放大比例,默认值为0。

.son {
  flex-grow: <number>; /* default 0 */}
ログイン後にコピー
ログイン後にコピー

  当给所有子元素设置该属性为1,那么将等分所有空间,如果单独给某一个子元素设置n倍,那么该子元素将占据的空间比其他子元素多n倍。

  

  3.flex-shrink属性

 

  flex-shrink属性定义了子元素的缩小比例,默认值为1。

.son {
  flex-shrink: <number>; /* default 1 */}
ログイン後にコピー
ログイン後にコピー

  给所有子元素设置该属性为1,当空间不足时那么所有子元素将等比例缩小平分所有空间,如果单独给某一个子元素设置0,那么该子元素将在空间不足时不缩小。

  

  4.flex-basis属性

 

  该属性定义了给子元素分配空间时其占据的空间为多少,可以设置为与其width和height属性一样的值,那么它将被分配固定的空间大小。

  

  5.flex属性

 

  该属性为flex-growflex-shrink 和 flex-basis的简写。

 

  6.align-self属性

 

  该属性允许设置过的子元素有与其他子元素不一样的对齐方式,可以覆盖align-items属性。

.son {
  align-self: auto | flex-start | flex-end | center | baseline | stretch;
}
ログイン後にコピー
ログイン後にコピー

Auto: デフォルト値。親の align-items 属性がデフォルトで継承されることを示します。

flex-start: 開始点を垂直方向に揃えます。   flex-start:垂直方向的起点对齐。

  flex-end:垂直方向的终点对齐。

  center:垂直方向的中点对齐。

  baseline: 与第一个子元素中文字的基线对齐。

  stretch(

flex-end: 垂直方向のエンドポイントの位置合わせ。

center: 垂直方向の中点を揃えます。

ベースライン: 最初の子要素のテキストのベースラインと位置合わせされます。

stretch (デフォルト値): 子要素が高さを設定しないか、高さが auto に設定されている場合、コンテナの高さ全体を占めます。 🎜🎜 🎜 flex レイアウト (伸縮自在なレイアウト) 🎜🎜🎜 1. コンテナのプロパティは次のとおりです: flex-dirction: (主軸の方向を決定します) (つまり、アイテムの配置の方向) 値: row/ row-reverse/column/column-reverse / flex-wrap: (1 つの軸を配置できない場合の折り返し方法) 値: nowrap (デフォルト): 行の折り返しなし。 Wrap: 最初の行を先頭にしてラップします。 Wrap-reverse: 以下の最初の行をラップします。 flex-flow: (flex-flow プロパティは、flex-direction プロパティと flex-wrap プロパティの省略形です。デフォルト値は row nowrap です) justify-content: (justify-content プロパティは、項目の配置を定義します)主軸。) 値の取得: flex-start (デフォルト): 左揃え flex-end: 右揃え center: 中央揃え space-between: 両端に揃え、項目間の間隔は等しくします。 space-around: 各アイテムは両側に等間隔に配置されます。したがって、項目間のスペースは、項目と境界線の間のスペースの 2 倍になります。 align-items (交差軸上で整列する方法) 値: flex-start/flex-end/center/baseline/stretch align-content (複数の軸の整列を定義します。項目に軸が 1 つしかない場合、この属性には何もありません効果 機能) 値: flex-start: 交差軸の開始点に位置合わせします。 flex-end: 交差軸の終点に位置合わせされます。 center: 交差軸の中点に位置合わせされます。 space-between: 交差軸の両端に合わせて、軸間の間隔が均等になります。 space-around: 各軸は両側に等間隔に配置されます。したがって、軸間の距離は、軸とフレーム間の距離の 2 倍になります。ストレッチ (デフォルト): 軸が交差軸全体を占めます。 。値が小さいほど、配置は前方に進みます。デフォルトは 0 です。flex-grow 属性は項目の拡大率を定義します。デフォルトは 0 です。つまり、スペースが残っている場合は拡大されません。 flex-shrink 属性は項目の縮小率を定義します。デフォルトは 1 です。つまり、スペースが不十分な場合、項目は縮小されます。フレックスベースのアイテムが占める主軸のスペース (メイン サイズ)。ブラウザはこの属性を使用して、主軸に余分なスペースがあるかどうかを計算します。デフォルト値は auto で、これはプロジェクトの元のサイズです。 flex align-self を使用すると、align-items プロパティをオーバーライドして、単一の項目を他の項目とは異なる方法で配置できます。デフォルト値は auto で、親要素がない場合は、親要素の align-items 属性を継承します。 🎜

以上が柔軟なレイアウト (Flex レイアウト) の詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Windows 11: スタート レイアウトをインポートおよびエクスポートする簡単な方法 Windows 11: スタート レイアウトをインポートおよびエクスポートする簡単な方法 Aug 22, 2023 am 10:13 AM

Windows 11 では、スタート メニューが再設計され、スタート メニューにフォルダー、アプリ、アプリがあった以前のバージョンとは異なり、ページのグリッドに配置された簡略化されたアプリのセットが特徴です。 [スタート] メニューのレイアウトをカスタマイズし、他の Windows デバイスにインポートおよびエクスポートして、好みに合わせてカスタマイズできます。このガイドでは、スタート レイアウトをインポートして Windows 11 のデフォルト レイアウトをカスタマイズする手順について説明します。 Windows 11 の Import-StartLayout とは何ですか? Import Start Layout は、Windows 10 以前のバージョンでスタート メニューのカスタマイズをインポートするために使用されるコマンドレットです。

Windows 11でデスクトップアイコンの位置レイアウトを保存する方法 Windows 11でデスクトップアイコンの位置レイアウトを保存する方法 Aug 23, 2023 pm 09:53 PM

Windows 11 はユーザー エクスペリエンスの点で多くのことをもたらしましたが、その反復作業で完全にエラーが発生しないわけではありません。ユーザーは時々問題に遭遇することがあり、アイコンの位置が変更されることはよくあります。では、Windows 11 でデスクトップのレイアウトを保存するにはどうすればよいでしょうか?現在のウィンドウの画面解像度を保存する場合でも、デスクトップ アイコンの配置を保存する場合でも、このタスクには組み込みのソリューションとサードパーティのソリューションが用意されています。これは、デスクトップに多数のアイコンがあるユーザーにとってはさらに重要になります。 Windows 11 でデスクトップ アイコンの場所を保存する方法については、この記事を読んでください。 Windows 11 がアイコンのレイアウト位置を保存しないのはなぜですか? Windows 11 がデスクトップ アイコンのレイアウトを保存しない主な理由は次のとおりです。 ディスプレイ設定の変更: 通常、ディスプレイ設定を変更すると、構成されたカスタマイズが変更されます。

WordPress Web ページの位置ずれを解決するためのガイド WordPress Web ページの位置ずれを解決するためのガイド Mar 05, 2024 pm 01:12 PM

WordPress Web ページの位置のずれを解決するためのガイド WordPress Web サイトの開発では、Web ページ要素の位置がずれていることがあります。これは、さまざまなデバイスの画面サイズ、ブラウザの互換性、または不適切な CSS スタイル設定が原因である可能性があります。このずれを解決するには、問題を注意深く分析し、考えられる原因を見つけて、段階的にデバッグおよび修復する必要があります。この記事では、WordPress Web ページの位置ずれに関する一般的な問題とその解決策をいくつか紹介し、開発に役立つ具体的なコード例を提供します。

HTML と CSS を使用してレスポンシブなカルーセル レイアウトを作成する方法 HTML と CSS を使用してレスポンシブなカルーセル レイアウトを作成する方法 Oct 20, 2023 pm 04:24 PM

HTML と CSS を使用してレスポンシブなカルーセル レイアウトを作成する方法 カルーセルは、最新の Web デザインの一般的な要素です。ユーザーの注意を引いたり、複数のコンテンツや画像を表示したり、自動的に切り替えたりすることができます。この記事では、HTMLとCSSを使ってレスポンシブカルーセルレイアウトを作成する方法を紹介します。まず、基本的な HTML 構造を作成し、必要な CSS スタイルを追加する必要があります。以下は単純な HTML 構造です: &lt;!DOCTYPEhtml&g

H5の位置属性の柔軟な応用スキル H5の位置属性の柔軟な応用スキル Dec 27, 2023 pm 01:05 PM

H5 でposition 属性を柔軟に使用する方法. H5 開発では、要素の配置とレイアウトが関係することがよくあります。このとき、CSS の位​​置プロパティが機能します。 Position 属性は、相対配置、絶対配置、固定配置、スティッキー配置など、ページ上の要素の配置を制御できます。この記事では、H5開発においてposition属性を柔軟に活用する方法を詳しく紹介します。

win7でのウィンドウ配置方法を紹介します。 win7でのウィンドウ配置方法を紹介します。 Dec 26, 2023 pm 04:37 PM

複数のウィンドウを同時に開いた場合、win7 には複数のウィンドウを異なる方法で配置して同時に表示する機能があり、各ウィンドウの内容をより明確に表示できます。では、win7 にはウィンドウの配置がいくつありますか? それらはどのようなものですか? エディターで見てみましょう。 Windows 7 のウィンドウを配置するにはいくつかの方法があります。つまり、カスケード ウィンドウ、積み重ねられた表示ウィンドウ、および並べて表示するウィンドウの 3 つです。複数のウィンドウを開いているときは、タスクバーの空いているスペースを右クリックします。 3つの窓の配置が確認できます。 1. カスケード ウィンドウ: 2. 積み重ねられた表示ウィンドウ: 3. ウィンドウを並べて表示:

CSS に含まれる構文の使用シナリオ CSS に含まれる構文の使用シナリオ Feb 21, 2024 pm 02:00 PM

CSS での contains の構文使用シナリオ CSS では、contain は、要素の内容が外部のスタイルやレイアウトから独立しているかどうかを指定する便利な属性です。これは、開発者がページ レイアウトをより適切に制御し、パフォーマンスを最適化するのに役立ちます。この記事では、contain 属性の構文使用シナリオを紹介し、具体的なコード例を示します。 contains 属性の構文は次のとおりです: contains:layout|paint|size|style|'none'|'stric

一般的に使用される Flex レイアウト プロパティは何ですか? 一般的に使用される Flex レイアウト プロパティは何ですか? Feb 25, 2024 am 10:42 AM

フレックス レイアウトの共通プロパティは何ですか? 特定のコード サンプルが必要です。フレックス レイアウトは、応答性の高い Web ページ レイアウトを設計するための強力なツールです。柔軟なプロパティのセットを使用して、Web ページ内の要素の配置とサイズを簡単に制御できます。この記事では、Flex レイアウトの一般的なプロパティを紹介し、具体的なコード例を示します。 display: 要素の表示モードを Flex に設定します。 .container{display:flex;}flex-directi

See all articles