フレックスボックス レイアウトでラップされたフレックス項目の幅を一貫して確保する方法
問題
フレックスボックス レイアウトでは、フレックス項目は通常、指定された幅に準拠します。最小幅と最大幅。ただし、フレックス項目が新しい行に折り返されると、使用可能なスペースを占有するために拡張する傾向があり、その結果、異なる行の項目間の幅が不一致になります。
解決策
直接的な解決策はありません。 CSS 仕様内のこの問題に対しては、メディア クエリを使用して回避策を実現できます。
Mixin アプローチ
SCSS Mixin:
@mixin flex-wrap-fix($flex-basis, $max-viewport-width: 2000px) { flex-grow: 1; flex-basis: $flex-basis; max-width: 100%; $multiplier: 1; $current-width: 0px; @while $current-width <p><strong>使用法:</strong></p><p>各フレックス項目にミックスインを適用します:</p><pre class="brush:php;toolbar:false">.flex-item { @include flex-wrap-fix(100px) }
説明
このミックスインは、指定されたフレックスに基づいて一連のメディア クエリを生成します-フレックス項目の基礎。各メディア クエリは、100% をその行に収まるフレックス アイテムの数で割ることにより、指定されたビューポート幅に対するフレックス アイテムの最大幅を計算します。
コンテナベースのコントロール用に更新された Mixin
場合によっては、フレックス コンテナの幅がビューポートの幅と一致しないことがあります。これに対処するには、代わりにミックスインの更新バージョンをフレックス コンテナに適用します。
@mixin flex-container-wrap-items($flex-basis, $max-expected-width: 2000px) { display: flex; flex-wrap: wrap; > * { max-width: 100%; flex-grow: 1; flex-basis: $flex-basis; } $multiplier: 1; $current-width: 0px; @while $current-width * { max-width: percentage(1/$multiplier); } } }
使用法:
ミックスインをフレックス コンテナに適用します。
.flex-container { @include flex-container-wrap-items(100px) }
例
変更された CodePen の例はここにあります:
http://codepen.io/anon/pen/aNVzoJ
注意事項
- このアプローチでは、すべての行のフレックス項目間の等しい幅はサポートされません。
- ビューポートの最大幅がわかっている場合は、過剰なメディア クエリを避けるためにそれを指定する必要があります。
以上がFlexbox レイアウトでラップされた Flex アイテムの幅を一貫して実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

CSSグリッドは、複雑で応答性の高いWebレイアウトを作成するための強力なツールです。設計を簡素化し、アクセシビリティを向上させ、古い方法よりも多くの制御を提供します。

記事では、レスポンシブデザインにおけるスペースの効率的なアラインメントと分布のためのレイアウト方法であるCSS FlexBoxについて説明します。 FlexBoxの使用量を説明し、CSSグリッドと比較し、ブラウザのサポートを詳細に説明します。

この記事では、ビューポートメタタグ、柔軟なグリッド、流体メディア、メディアクエリ、相対ユニットなど、CSSを使用してレスポンシブWebサイトを作成するための手法について説明します。また、CSSグリッドとフレックスボックスを使用してカバーし、CSSフレームワークを推奨しています

この記事では、要素の寸法の計算方法を制御するCSSボックスサイズのプロパティについて説明します。コンテンツボックス、ボーダーボックス、パディングボックスなどの値と、レイアウト設計とフォームアライメントへの影響について説明します。

記事では、CSS、キープロパティ、およびJavaScriptとの組み合わせを使用してアニメーションの作成について説明します。主な問題は、ブラウザの互換性です。

記事では、3D変換、主要なプロパティ、ブラウザの互換性、およびWebプロジェクトのパフォーマンスに関する考慮事項にCSSを使用して説明します。

この記事では、CSSグラデーション(線形、放射状、繰り返し)を使用して、ウェブサイトのビジュアルを強化し、深さ、フォーカス、および現代の美学を追加します。

記事では、CSSの擬似要素、HTMLスタイリングの強化における使用、および擬似クラスとの違いについて説明します。実用的な例を提供します。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

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

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。
