ホームページ ウェブフロントエンド CSSチュートリアル CSS3フレキシブルボックスモデルの開発手法の一つ

CSS3フレキシブルボックスモデルの開発手法の一つ

Jun 20, 2018 pm 02:03 PM
css3 弾性 ボックスモデル

この記事は主に CSS3 フレキシブル ボックス モデルの開発ノートを皆さんと共有し、互換性やさまざまな属性を紹介します。興味のある方は

フレキシブル ボックス モデル (フレキシブル ボックス モジュール) を参照してください。このモデルは、要素が内部でどのように分散されるかを決定するために使用されます。ボックスとボックス内の利用可能なスペースを処理します。これは XUL (Firefox ブラウザのユーザー インタラクション言語) に似ており、他の言語も同じボックス モデルを使用します。 XAML、GladeXML など。フレックスボックス モデルを使用すると、ブラウザ ウィンドウに適応する流動的なレイアウトや、フォント サイズに適応するフレックス レイアウトを簡単に作成できます。

互換性: フレックス ボックス モデル仕様は、2009 年に W3C 標準化組織によってリリースされました。現在、これをサポートしている主流ブラウザはありませんが、Webkit および Mozilla レンダリング エンジンを使用するブラウザは、設定をサポートするために使用されるプライベート プロパティのセットをカスタマイズしています。フレックスボックスモデル。

Webkit レンダリング エンジンを使用するブラウザには、主に Safari ブラウザと Chrome ブラウザが含まれます。このエンジンは、-webkit という接頭辞が付いたプライベート属性をサポートします。

Mozilla レンダリング エンジンを搭載したブラウザには主に、-moz というプレフィックスが付いたプライベート属性をサポートする Firefox ブラウザが含まれます。

関連属性:

box-align: ボックスの垂直方向の子要素のスペース割り当て方法を定義します
box-direction: ボックスの表示順序を定義します
box-flex: 子要素の適応サイズを定義しますボックス内
box -flex-group: 適応サブ要素グループを定義
box-lines: 列に表示されるサブ要素を定義
box-ordinal-group: ボックス内のサブ要素の表示位置を定義
box -orient: ボックス分割の座標を定義します Axis
box-pack: ボックス内の子要素の水平方向のスペース割り当て方法を定義します

box-orient 属性

この属性は、内部のフローのレイアウト方向を定義するために使用できますbox 要素。フレキシブル ボックス モデルを使用する場合、最初に親コンテナの表示属性を box または inline-box に設定する必要があります。
構文:

box-orient:horizo​​ntal | vertail | inline-axis |inherit

値の簡単な説明:

horizo​​ntal:box要素は、その子要素を左から右に水平線に表示します。

vertail: box 要素は、その子要素を上から下に垂直線で表示します。

inline-axis: ボックス要素は、その子要素をインライン軸に沿って表示します。

block-axis: ボックス要素は、ブロック軸に沿ってその子要素を表示します。

実践経験: 複数列レイアウトの設計

html コード:

<p id="box">  
    <p id="box0"><img src="images/web_01.gif" /></p>  
    <p id="sub-box">  
        <p id="box1"><img src="images/web_02.gif" /></p>  
        <p id="box2"><img src="images/web_03.gif" /></p>  
        <p id="box3"><img src="images/web_04.gif" /></p>  
    </p>  
</p>
ログイン後にコピー

CSS3 コード:

<style type="text/css">   
body{/*文档样式*/  
    margin:0;padding:0px;/*清除页边距*/  
    text-align:center;/*文档居中对齐*/  
    background:#170843;   
}   
#box{   
    margin:auto;/*文档居中对齐*/  
    text-align:center;   
    width:975px;   
}   
/*定制各个栏目的宽度*/  
#box1{width:185px;}   
#box2{width:601px;}   
#box3{width:189px;}   
/*定制子包含框的盒子显示,其包含的元素水平流动*/  
#sub-box{   
    display:-moz-box;   
    display:-webkit-box;   
    display:box;   
    box-orient:horizontal;   
    -moz-box-orient:horizontal;   
    -webkit-box-orient:horizontal;     
}   
</style>
ログイン後にコピー

デモ効果:

box-direction 属性

box-direction 属性は、内部要素を変更できますbox 要素 フロー順序、この属性の基本構文:

box-direction:normal | reverse |inherit

値の簡単な説明:

normal: 通常の表示順序、つまり box-origent 属性の場合box 要素の値が水平の場合、含まれるサブ要素は左から右の順に表示されます。つまり、各サブ要素の左側は常に前のサブ要素の右側に近くなります。 box要素のbox-origent属性値がverticalに設定されている場合、それに含まれるサブ要素が左から右の順に表示されます。 上から下の順に表示されます。

reverse: 表示を反転し、ボックスに含まれるサブ要素の表示順序が通常とは逆になります。

inherit: 上位要素の表示順序を継承します。

実践経験: 逆レイアウト Web ページ (上記のケースに基づく):

CSS3 コード:

<style>   
body{   
    margin:0;padding:0px;   
    text-align:center;   
    background:#170843;   
}   
#box{   
    margin:auto;   
    text-align:center;   
    width:975px;   
}   
#box1{width:185px;}   
#box2{width:601px;}   
#box3{width:189px;}   
#sub-box{   
    display:-moz-box;   
    display:-webkit-box;   
    display:box;   
    box-orient:horizontal;   
    -moz-box-orient:horizontal;   
    -webkit-box-orient:horizontal;     
    box-direction:reverse;   
    -moz-box-direction:reverse;   
    -webkit-box-direction:reverse;   
}   
</style>
ログイン後にコピー

デモ効果:

box-ordinal-group 属性

box-direction 属性は次のとおりです。ボックス内の要素のフロー順序が変更され、box-ordinal-group 属性はボックス内の各サブ要素の特定の表示位置を設定できます。 構文は次のとおりです:

box-ordinal-group:

値の説明:

属性値は、子要素の位置記号を設定するために使用される 1 から始まる自然数です。子要素の分布は、この属性値に従って小さいものから大きいものへと配置されます。デフォルトでは、子要素は要素の位置に基づいて配置されます。
注: box-ordinal-group 属性値が指定された子要素がない場合、そのシーケンス番号はデフォルトで 1 になり、同じシーケンス番号を持つ要素はドキュメントにロードされた順序で配置されます。

実践体験: 縦型 Web レイアウト

HTML コード:

<p id="box">  
    <p id="box1"><img src="images/web1_01.gif" /></p>  
    <p id="box2"><img src="images/web1_02.gif" /></p>  
    <p id="box3"><img src="images/web1_03.gif" /></p>  
    <p id="box4"><img src="images/web1_04.gif" /></p>  
</p>
ログイン後にコピー

CSS3 コード:

<style type="text/css">   
body {   
    margin:0;   
    padding:0;   
    text-align:center;   
    background:#d9bfe8;   
}   
#box {   
    margin:auto;   
    text-align:left;   
    width:988px;   
}   
/*定义盒形显示及盒内元素垂直显示*/  
#box {   
    display : -moz-box;   
    display : -webkit-box;   
    display : box;   
    box-orient:vertical;   
    -moz-box-orient:vertical;   
    -webkit-box-orient:vertical;   
}   
/*根据网页内容的现实需要,借助弹性盒模型调整各个板块的显示顺序*/  
#box1 {/*设置第一个元素显示在第二个位置*/  
    -moz-box-ordinal-group : 2;/*兼容Mozilla Gecko引擎*/  
    -webkit-box-ordinal-group : 2;/*兼容Webkit引擎*/  
    box-ordinal-group : 2;/*标准用法*/  
}   
#box2 {/*设置第二个元素显示在第三个位置*/  
    -moz-box-ordinal-group : 3;/*兼容Mozilla Gecko引擎*/  
    -webkit-box-ordinal-group : 3;/*兼容Webkit引擎*/  
    box-ordinal-group : 3;/*标准用法*/  
}   
#box3 {/*设置第三个元素显示在第一个位置*/  
    -moz-box-ordinal-group : 1;/*兼容Mozilla Gecko引擎*/  
    -webkit-box-ordinal-group : 1;/*兼容Webkit引擎*/  
    box-ordinal-group : 1;/*标准用法*/  
}   
#box4 {/*设置第四个元素显示在第四个位置*/  
    -moz-box-ordinal-group : 4;/*兼容Mozilla Gecko引擎*/  
    -webkit-box-ordinal-group : 4;/*兼容Webkit引擎*/  
    box-ordinal-group : 4;/*标准用法*/  
}   
</style>
ログイン後にコピー

デモ効果

上記はこの記事の全内容です。皆様の学習に役立つことを願っています。その他の関連コンテンツ PHP 中国語 Web サイトにご注意ください。

関連する推奨事項:

CSS3 を使用して、クールな Black Cat Sheriff ホームページを実現します

CSS を使用して、純粋な英語の数字の自動行折り返しを実現します

以上がCSS3フレキシブルボックスモデルの開発手法の一つの詳細内容です。詳細については、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)

純粋な CSS3 で波の効果を実現するにはどうすればよいですか? (コード例) 純粋な CSS3 で波の効果を実現するにはどうすればよいですか? (コード例) Jun 28, 2022 pm 01:39 PM

純粋な CSS3 で波の効果を実現するにはどうすればよいですか?この記事ではSVGとCSSアニメーションを使って波のエフェクトを作成する方法をご紹介しますので、お役に立てれば幸いです。

CSSを上手に使って色々な変わった形のボタンを実現(コード付き) CSSを上手に使って色々な変わった形のボタンを実現(コード付き) Jul 19, 2022 am 11:28 AM

この記事では、頻繁に登場する様々な奇妙な形のボタンをCSSを使って簡単に実現する方法を紹介しますので、ぜひ参考にしてください。

スペースを取らずにCSS内の要素を非表示にする方法 スペースを取らずにCSS内の要素を非表示にする方法 Jun 01, 2022 pm 07:15 PM

2 つの方法: 1. display 属性を使用して、要素に「display:none;」スタイルを追加するだけです。 2. Position 属性と top 属性を使用して、要素の絶対位置を設定し、要素を非表示にします。要素に「position:absolute;top:-9999px;」スタイルを追加するだけです。

CSS3でレースボーダーを実装する方法 CSS3でレースボーダーを実装する方法 Sep 16, 2022 pm 07:11 PM

CSS では、border-image 属性を使用してレースの境界線を実現できます。 border-image 属性では、画像を使用して境界線を作成できます。つまり、境界線に背景画像を追加できます。背景画像をレース スタイルとして指定するだけで済みます。構文「border-image: url (画像パス) は、内側への画像境界線の幅。開始を繰り返すかどうか;"。

テキストカルーセルと画像カルーセルも純粋な CSS を使用して実現できることがわかりました。 テキストカルーセルと画像カルーセルも純粋な CSS を使用して実現できることがわかりました。 Jun 10, 2022 pm 01:00 PM

テキストカルーセルと画像カルーセルを作成するにはどうすればよいですか?皆さんが最初に考えるのはjsを使うかどうかですが、実はテキストカルーセルや画像カルーセルも純粋なCSSでも実現できますので実装方法を見ていきましょう。

CSS3でアニメーションの回転速度を設定する方法 CSS3でアニメーションの回転速度を設定する方法 Apr 28, 2022 pm 04:32 PM

CSS3 では、「animation-timing-function」属性を使用してアニメーションの回転速度を設定できます。この属性は、アニメーションがサイクルを完了する方法を指定し、アニメーションの速度曲線を設定するために使用されます。構文は「element {アニメーションタイミング関数: 速度属性値;}"。

CSS3 フィルターを賢く使って、テキストのフラッシュ切り替えアニメーション効果を作成しましょう。 CSS3 フィルターを賢く使って、テキストのフラッシュ切り替えアニメーション効果を作成しましょう。 Jul 20, 2022 am 10:55 AM

この記事では、CSS3 フィルターを使用してハイエンドなテキスト フラッシュ切り替えアニメーション効果を実現する方法を説明します。

css3アダプティブレイアウトとは何ですか css3アダプティブレイアウトとは何ですか Jun 02, 2022 pm 12:05 PM

「レスポンシブ レイアウト」とも呼ばれるアダプティブ レイアウトとは、画面の幅を自動的に認識し、それに応じて調整できる Web ページ レイアウトを指します。このような Web ページは、端末ごとに特定のバージョンを作成するのではなく、複数の異なる端末と互換性を持たせることができます。 。アダプティブ レイアウトは、モバイル Web ブラウジングの問題を解決するために生まれ、さまざまな端末を使用するユーザーに優れたユーザー エクスペリエンスを提供できます。

See all articles