84669 人が学習中
152542 人が学習中
20005 人が学習中
5487 人が学習中
7821 人が学習中
359900 人が学習中
3350 人が学習中
180660 人が学習中
48569 人が学習中
18603 人が学習中
40936 人が学習中
1549 人が学習中
1183 人が学習中
32909 人が学習中
Flexbox 列が 4 つあり、すべて正常に動作しますが、列にテキストを追加して大きなフォント サイズに設定すると、Flex プロパティにより列が本来の幅よりも広くなってしまいます。
word-break:break-wordを使用してみたところ、うまくいきましたが、列のサイズを非常に狭い幅に変更すると、テキスト内の文字が複数の行に分割されてしまいました (各行は 1 文字) )、列の幅は 1 文字のサイズ以上になります。
word-break:break-word
は使用できません。JSフィドル
リーリー リーリー
Flex と Grid が何年も私を悩ませてきたことがわかったので、次のことを提案します:
この動作が必要な場合は、min-width: autoまたはmin-height: autoを使用してください。
min-width: auto
min-height: auto
実際、ボックス サイズを追加して、すべてのレイアウトをより合理的にすることもできます:
何か奇妙な結果があるかどうか知っている人はいますか?上記の方法を組み合わせて数年間使用しましたが、問題はありませんでした。実際、フレックス/グリッドからコンテンツの内側に向かってレイアウトするのではなく、コンテンツから外側に向かってフレックス/グリッドにレイアウトしたいというケースは思いつきません。もちろん、そのようなケースが存在するとしても、それはまれです。 。したがって、これは悪いデフォルトのように感じられます。しかし、もしかしたら私は何かを見逃しているでしょうか?
Flexbox のデフォルト設定が表示されました。
フレキシブル項目は、主軸に沿ったコンテンツのサイズより小さくすることはできません。
デフォルト値は...
最小幅: 自動
最小高さ: 自動
...行方向と列方向のそれぞれの伸縮性アイテムの場合。
フレックス項目を次のように設定することで、これらのデフォルトをオーバーライドできます。
最小幅: 0
最小高さ: 0
オーバーフロー: hidden
visible
概要自動値...
自動
overflow
が表示されている
場合、min-size 属性の値は
です。
したがって、
と
を置き換えることができます。
###その上...###
たとえば、行指向コンテナ内の Flex アイテムは、デフォルトでは
min-width: auto/min-height: auto
基本的に、min-width: autoを持つ上位レベルの Flex プロジェクトは、 code>min-width: 0
基本的に、
を持つ上位レベルの Flex プロジェクトは、 code>min-width: 0
###例:###Flex アイテムは内容よりも小さく縮小しません
Flex アイテムは内容よりも小さく縮小しません
min-height: 0のデフォルトに戻すか、(2) に基づいているようです。謎のアルゴリズム0
介入と呼ばれるものです。)非常に多くの人が、レイアウト (特に必要なスクロールバー) が Chrome では期待どおりに機能しているのを確認していますが、Firefox/Edge ではそうではありません。この問題については、こちらで詳しく説明しています:Flex-shrink の Firefox と Chrome の違いIE11
介入
と呼ばれるものです。)非常に多くの人が、レイアウト (特に必要なスクロールバー) が Chrome では期待どおりに機能しているのを確認していますが、Firefox/Edge ではそうではありません。この問題については、こちらで詳しく説明しています:
仕様に記載されているように、min-widthおよびmin-heightプロパティのauto値は「新規」です。これは、一部のブラウザでは、値を更新する前に Flex レイアウトを実装しており、0がmin0値が表示される可能性があることを意味します。 "http://www.w3.org/TR/CSS2/visudet.html#min-max-widths" rel=" -widthCSS 2.1## #。IE11 はそのようなブラウザです。他のブラウザは、フレックスボックス仕様で定義された新しいauto値に更新されました。中定义的 auto
min-width
min-height
auto
0
min0値が表示される可能性があることを意味します。 "http://www.w3.org/TR/CSS2/visudet.html#min-max-widths" rel=" -widthCSS 2.1## #。IE11 はそのようなブラウザです。他のブラウザは、フレックスボックス仕様で定義された新しいauto値に更新されました。中定义的 auto
値が表示される可能性があることを意味します。 "http://www.w3.org/TR/CSS2/visudet.html#min-max-widths" rel=" -width
CSS 2.1## #。IE11 はそのようなブラウザです。他のブラウザは、フレックスボックス仕様で定義された新しい
auto値に更新されました。中定义的 auto
Flex と Grid が何年も私を悩ませてきたことがわかったので、次のことを提案します:
リーリーこの動作が必要な場合は、
min-width: auto
またはmin-height: auto
を使用してください。実際、ボックス サイズを追加して、すべてのレイアウトをより合理的にすることもできます:
リーリー何か奇妙な結果があるかどうか知っている人はいますか?上記の方法を組み合わせて数年間使用しましたが、問題はありませんでした。実際、フレックス/グリッドからコンテンツの内側に向かってレイアウトするのではなく、コンテンツから外側に向かってフレックス/グリッドにレイアウトしたいというケースは思いつきません。もちろん、そのようなケースが存在するとしても、それはまれです。 。したがって、これは悪いデフォルトのように感じられます。しかし、もしかしたら私は何かを見逃しているでしょうか?
Flex プロジェクトの自動最小サイズ
Flexbox のデフォルト設定が表示されました。
フレキシブル項目は、主軸に沿ったコンテンツのサイズより小さくすることはできません。
デフォルト値は...
最小幅: 自動
最小高さ: 自動
...行方向と列方向のそれぞれの伸縮性アイテムの場合。
フレックス項目を次のように設定することで、これらのデフォルトをオーバーライドできます。
最小幅: 0
最小高さ: 0
オーバーフロー: hidden
(またはvisible
を除くその他の値)フレックスボックス仕様
概要
###言い換えると:###自動
値...min-width: auto- および
値が
- 表示されない
は、
- min-width: 0
最小サイズのアルゴリズムはスピンドルにのみ適用されます。
min-height: auto
デフォルト値は、overflow
が表示されている
場合にのみ適用されます。#overflow
場合、min-size 属性の値は
0です。
したがって、
overflow: hideと
min-height: 0を置き換えることができます。
###その上...###
たとえば、行指向コンテナ内の Flex アイテムは、デフォルトでは
min-height: autoを取得しません。 詳細な手順については、次の投稿を参照してください。
-
min-width: 0 を適用しましたが、プロジェクトはまだ縮小しませんか?
ネストされたフレックスコンテナ曲げ方向: 行と曲げ方向: 列の最小幅は別の方法で表示されます
HTML 構造の複数のレベルで Flex プロジェクトを操作している場合は、デフォルトの
min-width: auto/min-height: auto
をオーバーライドすることもできます。より高いレベルのアイテム。
を持つ下にネストされたプロジェクトの縮小を防ぎます。基本的に、
min-width: autoを持つ上位レベルの Flex プロジェクトは、 code>min-width: 0
###例:###
子供を親に合わせるFlex アイテムは内容よりも小さく縮小しません
少なくとも 2017 年以降、Chrome は (1)
min-width: 0- /
min-height: 0のデフォルトに戻すか、(2) に基づいているようです。謎のアルゴリズム0
デフォルト値が自動的に適用される場合があります。 (これはおそらく、介入
と呼ばれるものです。)非常に多くの人が、レイアウト (特に必要なスクロールバー) が Chrome では期待どおりに機能しているのを確認していますが、Firefox/Edge ではそうではありません。この問題については、こちらで詳しく説明しています:
Flex-shrink の Firefox と Chrome の違いIE11
仕様に記載されているように、
min-width
およびmin-height
プロパティのauto
値は「新規」です。これは、一部のブラウザでは、値を更新する前に Flex レイアウトを実装しており、0
がmin0
値が表示される可能性があることを意味します。 "http://www.w3.org/TR/CSS2/visudet.html#min-max-widths" rel=" -width
CSS 2.1## #。IE11 はそのようなブラウザです。他のブラウザは、フレックスボックス仕様で定義された新しい
auto値に更新されました。中定义的 auto
修正されたデモ