亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

ホームページ ウェブフロントエンド CSSチュートリアル 初心者向けのFlexBoxへの友好的な紹介

初心者向けのFlexBoxへの友好的な紹介

Feb 15, 2025 pm 12:39 PM

A Friendly Introduction to Flexbox for Beginners

CSS Flexbox:1次元レイアウトツール

弾性ボックスレイアウトモジュールであるFlexBoxは、一連の同様のプロジェクトなどの1次元レイアウトを作成するためのCSSの強(qiáng)力なツールです。特にシングルローまたはシングル列のレイアウトに適しており、古いブラウザーのグリッドレイアウトの信頼できる代替品として使用できます。この記事では、わかりやすいFlexboxガイドが提供されます。

CSSグリッドレイアウトの出現(xiàn)にもかかわらず、FlexBoxにはまだ一意の価値があります。 2つの間には関數(shù)の重複がいくつかありますが、CSSレイアウトで異なる役割を果たします。一般的に、FlexBoxは1次元のレイアウト(例:一連の同様のプロジェクト)により適していますが、グリッドは2次元レイアウト(例:ページ全體の要素など)により適しています。

ただし、FlexBox

はフルページレイアウトにも使用できるため、グリッドをサポートしていないブラウザでは、グリッドレイアウトの効果的な代替品として使用できます。 (ほとんどの最新のブラウザではグリッドが急速に改善されていますが、FlexBoxにはまだ幅広いサポートがあります。これは、一部の古いブラウザで適切に動作するためにレイアウトが必要な場合は非常に実用的です。)

FlexBoxの利點(diǎn)

が含まれます ページのコンテンツは、任意の方向(左、右、下、または偶數(shù))にレイアウトできます。

コンテンツクリップの視覚順序は、逆転または再配置できます。

    アイテムは、利用可能なスペースに応じて「柔軟に」サイズ変更でき、コンテナまたは互いに揃えることができます。
  • 単階建ての列レイアウトを作成する(各列のコンテンツの量に関係なく)非常に簡単です。
  • さまざまな特性と可能性を説明するために、この記事のいくつかのデモの例として、次の簡単なレイアウトを仮定しましょう。
  • 最初のステップは、要素を
  • 、つまり
および

に配置し、並んで表示することです。 FlexBoxがなければ、フロートを使用してこれらの3つの要素を配置することもできますが、これはそれほど直接的ではありません。さらに、従來の方法はよく知られている問題をもたらします。各列は、コンテンツの高さと同じ高さです。したがって、3つの列すべてに同じ高さを設(shè)定して、長さが一貫しているか、何らかのトリックを使用する必要があります。

<div class="example">
  <header>header content here</header>
  <main class="main">
    <nav>nav content here</nav>
    <div class="content">main content here</div>
    <aside>aside content here</aside>
  </main>
  <footer>footer content here</footer>
</div>
FlexBoxが生まれました。

.main<nav>FlexBox <aside>

を使用してください

FlexBoxのコアは、

屬性の

値です。これは、コンテナ要素として設(shè)定する必要があります。そうすることで、子供の要素が「弾性アイテム」に変わります。これらのアイテムは、デフォルトでいくつかの便利なプロパティを取得します。たとえば、それらは並んで配置され、指定された幅のない要素は殘りのスペースを自動的に占有します。 したがって、

's

displayに設(shè)定すると、そのflexの要素は

の間で自動的に圧迫されます。計(jì)算なしでは非常に便利ではありませんか?追加のボーナスとして、これらの3つの要素は魔法のように同じ高さを持っています。 .main

<div class="example">
  <header>header content here</header>
  <main class="main">
    <nav>nav content here</nav>
    <div class="content">main content here</div>
    <aside>aside content here</aside>
  </main>
  <footer>footer content here</footer>
</div>

要素順序:flexboxorder屬性

FlexBoxの別のプロパティは、要素の順序を簡単に変更できることです。クライアントの上記のレイアウトを構(gòu)築したとしたら、彼女が.contentの前に<nav>に表示されることを望んでいるとします。

通常、HTMLソースコードを掘り下げ、そこで注文を変更する必要があります。 FlexBoxを使用すると、CSSを介して完全にこのタスクを?qū)g行できます。 .content 'sorderプロパティを-1に設(shè)定するだけで、コンテンツ列が正面にあります。

.main {
  display: flex;
}

この場合、他の列の値を明示的に宣言する必要はありません。 order CSSスタイルに依存しないFlexBoxを使用した

htmlソースコード

しかし、顧客はまだ満足していません。彼女は

がページの最初の要素であることを望んでいます。まあ、FlexBoxは再びあなたの友人です(この場合、単に従うよりもクライアントを教育する方が良いかもしれません)。內(nèi)部要素と外部要素を再配置する必要があるため、<footer>のルールを設(shè)定する必要があります。ウェブページにフレックスコンテナをネストして、必要な結(jié)果を達(dá)成できることに注意してください。 <header>、<div>display: flexは垂直に積み重ねられているため、最初に垂直コンテキストを設(shè)定する必要があります。また、<header>の値は-1であるため、最初にページに表示されます。そんなに簡単です。 <main> <footer> flex-direction: columnしたがって、要素の行を列に変更したり、その逆に変更したい場合は、<footer>屬性を使用して、orderまたは

.main {
  display: flex;
}

.content {
  order: -1;
}
がデフォルト)に設(shè)定できます。 >

ただし、能力が大きいほど責(zé)任が大きくなります。多くの訪問者がキーボードを使用してFlexBoxベースのWebサイトを閲覧することを忘れないでください。したがって、HTMLソースコードの要素の順序が畫面、アクセシビリティは深刻な問題になる可能性があります。 flex-direction columnrowflexbox row

にアイテムを揃える方法

FlexBoxは、子供を水平および垂直に非常に直接整列させることもできます。

を使用して、フレックスコンテナ內(nèi)のすべての要素に同じアライメントを適用できます。プロジェクトごとに異なるアライメントを設(shè)定する場合は、を使用してください。要素のアライメントは、

屬性の値に依存します。その値が

(つまり、要素が水平に配置される)の場合、アライメントは垂直軸に適用されます。

(つまり、要素が垂直に配置される)に設(shè)定されている場合、水平軸に適用されます。 align-items たとえば、align-selfコンテナ要素內(nèi)で異なる方法で整列する形狀がいくつかあります。必要です:flex-direction

  • 各形狀のalign-selfプロパティを適切な値に設(shè)定します。考えられる値には、center、stretch(要素が容器に適合するように配置されている)、flex-start、flex-end、およびbaseline(要素はコンテナのベースラインに配置されます)が含まれます。
  • コンテナ要素をdisplay: flexに設(shè)定します。
  • 最後に、子要素の整列に影響があるため、親コンテナのflex-direction屬性に注意を払ってください。
<div class="example">
  <header>header content here</header>
  <main class="main">
    <nav>nav content here</nav>
    <div class="content">main content here</div>
    <aside>aside content here</aside>
  </main>
  <footer>footer content here</footer>
</div>

親コンテナ內(nèi)のすべての要素を同じ方法で整列させる必要がある場合、親コンテナのalign-items屬性を使用できます??激à椁欷雮帳摔?、centerflex-start、flex-endstretch(デフォルト:アイテムがコンテナに合うように伸びる)およびbaseline(アイテムはコンテナのベースラインに配置されています)が含まれます。

.main {
  display: flex;
}

FlexBoxを使用してコンテンツを調(diào)整します< 別のアライメント屬性は

です。これは、複數(shù)の要素間で利用可能なスペースを均等に割り當(dāng)てる場合に非常に便利です。

justify-content許容値には、

、

center、flex-start(アイテムの間にスペースがあります)とflex-end(アイテムの前、間、後にスペースがあります)が含まれます。 space-between たとえば、使用していた単純なHTMLテンプレートのspace-around要素內(nèi)で、3つの要素の3つの要素を見つけることができます?,F(xiàn)在、それらはすべてページの左側(cè)に押し込まれています。これらの3つの要素を何らかの形で表示して、最初と最後の要素の左端と右端にスペースを個別に作成するのではなく、それらの間にスペースを作成する場合は、

(親コンテナ)を

に設(shè)定します。 :<main> <nav> .content<aside>FlexBoxを使用してプロジェクトサイズを調(diào)整します.mainjustify-content space-between

屬性を使用すると、フレックスコンテナ內(nèi)の他の要素に対する要素の長さを制御できます。
.main {
  display: flex;
}

.content {
  order: -1;
}

このプロパティは、次のプロパティのそれぞれの略語です。

- 他の弾性要素に比べて要素がどれだけ成長するかを指定する數(shù)字。

flex

- 他の弾性要素に対してどの程度の要素が収縮するかを指定する數(shù)字。

    - 要素の長さ。許容可能な値には、
  • 、flex-grow、または「%」、「px」、「em」、またはその他の長さの単位が続く數(shù)値が含まれます。
  • たとえば、flex-shrinkモノスペースの3つの列を取得するには、各列の
  • を設(shè)定するだけです。
  • flex-basisコンテンツ領(lǐng)域をautoおよびinheritの2倍の幅にする必要がある場合は、
  • に対して
を設(shè)定し、他の2倍を1:

に殘します。 flex: 1

その他のリソース
.example {
  display: flex;
  flex-direction: column;
}

footer {
  order: -1;
}

<nav><aside>結(jié)論.contentflex: 2ご覧のとおり、Webサイト上の要素の場所を制御する必要がある場合、FlexBoxは私たちの生活をずっと楽にすることができます。それは非常に信頼性が高く、トリック、折りたたみ式の容器、または私たちが毎日時代遅れに対処しなければならない他の奇妙なものを作ります。

前述のように、今日のフルページレイアウトのより良いオプションはCSSグリッドですが、FlexBoxの機(jī)能の範(fàn)囲を知る価値があります。 FlexBoxは、関連アイテムを1つの次元に合わせるのに最適ですが、必要に応じて古いブラウザーで動作するグリッドに便利な代替品にすることもできます。

CSS FLEXBOX (元のドキュメントと一致するように、ここによくある質(zhì)問を追加する必要があります)

以上が初心者向けのFlexBoxへの友好的な紹介の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

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

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

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

ロードスピナーとアニメーションを作成するためのCSSチュートリアル ロードスピナーとアニメーションを作成するためのCSSチュートリアル Jul 07, 2025 am 12:07 AM

CSSロード回転子を作成するには3つの方法があります。1。境界の基本回転子を使用して、HTMLとCSSを介してシンプルなアニメーションを?qū)g現(xiàn)します。 2。複數(shù)のポイントのカスタム回転子を使用して、異なる遅延時間を経てジャンプ効果を?qū)g現(xiàn)します。 3.ボタンに回転子を追加し、JavaScriptを介してクラスを切り替えて、読み込みステータスを表示します。各アプローチは、ユーザーエクスペリエンスを向上させるために、色、サイズ、アクセシビリティ、パフォーマンスの最適化などのデザインの詳細(xì)の重要性を強(qiáng)調(diào)しています。

CSSブラウザの互換性の問題とプレフィックスに対処します CSSブラウザの互換性の問題とプレフィックスに対処します Jul 07, 2025 am 01:44 AM

CSSブラウザの互換性とプレフィックスの問題に対処するには、ブラウザサポートの違いを理解し、ベンダーのプレフィックスを合理的に使用する必要があります。 1. FlexBoxやグリッドのサポート、位置:粘著性の無効、アニメーションのパフォーマンスなどの一般的な問題を理解することは異なります。 2. CANIUSE確認(rèn)機(jī)能サポートステータスを確認(rèn)します。 3. -webkit-、-moz-、-ms-、-o-およびその他のメーカーのプレフィックスを正しく使用します。 4.自動的にプレフィックスを追加するためにAutoprefixerを使用することをお勧めします。 5. PostCSSをインストールし、ターゲットブラウザを指定するようにBrowserSlistを構(gòu)成します。 6.建設(shè)中の互換性を自動的に処理します。 7. Modernizr検出機(jī)能は、古いプロジェクトに使用できます。 8.すべてのブラウザの一貫性を追求する必要はありません、

ディスプレイの違いは何ですか:インライン、ディスプレイ:ブロック、ディスプレイ:インラインブロック? ディスプレイの違いは何ですか:インライン、ディスプレイ:ブロック、ディスプレイ:インラインブロック? Jul 11, 2025 am 03:25 AM

Themaindifferencesbetweendisplay:インライン、ブロック、およびinline-blockinhtml/cssarelayoutbehavior、spaceusage、andstylingcontrol.1.inlineelementsflowwithtext、notstartonnewlines、nagrorewidth/height、height、andonlyhorizo??ntalpadddddddddddddddding

CSSクリップパスでカスタムシェイプを作成します CSSクリップパスでカスタムシェイプを作成します Jul 09, 2025 am 01:29 AM

CSSのクリップパス屬性を作物要素に使用して、寫真やSVGに依存することなく、三角形、円形ノッチ、ポリゴンなどのカスタム形狀になります。その利點(diǎn)には、次のものが含まれます。1。円、楕円、ポリゴンなどのさまざまな基本的な形狀をサポートします。 2。レスポンシブ調(diào)整とモバイル端子に適応可能。 3.アニメーションが簡単で、HoverまたはJavaScriptと組み合わせて動的効果を?qū)g現(xiàn)できます。 4.レイアウトフローには影響せず、ディスプレイエリアのみを収穫します。一般的な使用法は、円形のクリップパス:円(50pxatcenter)および三角クリップパス:ポリゴン(50%0%、100 0%、0 0%)などです。知らせ

スタイリングは、CSSとは異なるリンクを訪問しました スタイリングは、CSSとは異なるリンクを訪問しました Jul 11, 2025 am 03:26 AM

アクセスしたリンクのスタイルを設(shè)定すると、特にコンテンツ集約型のWebサイトでユーザーエクスペリエンスを向上させることができ、ユーザーがより良いナビゲートを支援します。 1。CSSを使用してください:訪問した擬似クラスは、色の変化などの訪問されたリンクのスタイルを定義します。 2。ブラウザは、プライバシーの制限により、いくつかの屬性の変更のみを許可することに注意してください。 3.突然の狀態(tài)を避けるために、色の選択は全體的なスタイルと調(diào)整する必要があります。 4.モバイル端子はこの効果を表示しない場合があり、アイコン補(bǔ)助ロゴなどの他の視覚的なプロンプトと組み合わせることをお勧めします。

CSSを使用して応答性のある畫像を作成する方法は? CSSを使用して応答性のある畫像を作成する方法は? Jul 15, 2025 am 01:10 AM

CSSを使用してレスポンシブ畫像を作成するには、主に次の方法で達(dá)成できます。1。最大幅を使用してください:100%と高さ:自動化して、割合を維持しながら畫像がコンテナ幅に適応できるようにします。 2。HTMLのSRCSETおよびサイズの屬性を使用して、異なる畫面に適合した畫像ソースをインテリジェントにロードします。 3.オブジェクトフィットとオブジェクトポジションを使用して、畫像のトリミングとフォーカスディスプレイを制御します。一緒に、これらの方法により、畫像がさまざまなデバイスで明確かつ美しく表示されるようになります。

CSSユニットの分解:PX、EM、REM、VW、VH比較 CSSユニットの分解:PX、EM、REM、VW、VH比較 Jul 08, 2025 am 02:16 AM

CSSユニットの選択は、設(shè)計(jì)要件と応答性の要件に依存します。 1.PXは固定サイズに使用され、正確な制御に適していますが、弾力性の欠如に適しています。 2.EMは相対単位であり、親要素の影響によって簡単に引き起こされますが、REMはルート要素に基づいてより安定しており、グローバルなスケーリングに適しています。 3.VW/VHは、レスポンシブデザインに適したビューポートサイズに基づいていますが、極端な畫面の下でのパフォーマンスに注意を払う必要があります。 4.選択するときは、応答性の調(diào)整、要素階層関係、ビューポートの依存関係に基づいて決定する必要があります。合理的な使用は、レイアウトの柔軟性とメンテナンスを改善できます。

一般的なCSSブラウザの矛盾とは何ですか? 一般的なCSSブラウザの矛盾とは何ですか? Jul 26, 2025 am 07:04 AM

さまざまなブラウザのCSS解析に違いがあるため、主にデフォルトのスタイルの違い、ボックスモデルの計(jì)算方法、フレックスボックスおよびグリッドレイアウトサポートレベル、および特定のCSS屬性の一貫性のない動作を含む一貫性のないディスプレイ効果が得られます。 1.デフォルトのスタイル処理は一貫性がありません。解決策は、cssresetまたはremormize.cssを使用して初期スタイルを統(tǒng)合することです。 2。IEの古いバージョンのボックスモデル計(jì)算方法は異なります。 Box-Sizing:Border-Boxを統(tǒng)一された方法で使用することをお勧めします。 3. FlexBoxとグリッドは、エッジの場合や古いバージョンでは異なる機(jī)能を示します。より多くのテストを行い、Autoprefixerを使用します。 4.一部のCSS屬性の動作は一貫性がありません。 Caniuseは相談して格下げする必要があります。

See all articles