flex-basesおよびwidthプロパティ
flex-basicは要素サイズ自体を決定する属性ではありません.
たぶんこのようなコードがあります.
const Field1 = styled.div`
display: flex;
flex-basis: 75%;
background: lightcoral;
`;
const Field2 = styled.div`
display: flex;
flex-basis: 25%;
background: lightgreen;
`;
const App = () => {
return (
<Container>
<Field1>
<List>
<Item />
</List>
</Field1>
<Field2></Field2>
</Container>
);
};
Field1
の属性を使用して、flex物品Field2
、flex-basis
がコンテナ全体に占める割合を定義します.(それぞれ75%と25%)子要素
Item
が占める実際の幅が親要素Field1
より小さい場合は問題ありません.しかし、そうでなければ予想とは違った結果になる.
const App = () => {
return (
<Container>
<Field1>
<List>
<Item />
<Item />
<Item />
<Item />
<Item />
</List>
</Field1>
<Field2></Field2>
</Container>
);
};
サブエレメントのサイズが大きくなると、
flex-basis
に指定された値は有効ではありません.List
にはoverflow-x = scroll
の属性が与えられ、Item
の数が増加してもオーバーフローしないが、Field1
の大きさに影響を及ぼす.flex-basis
要素のサイズは強制されません.ベンドレイアウトでは、実際の要素のサイズは、基準値としてのみ使用される他の要因によって変化する場合があります.これはwidth
属性と比較される.const Field1 = styled.div`
display: flex;
width: 75%;
background: lightcoral;
`;
const Field2 = styled.div`
display: flex;
width: 25%;
background: lightgreen;
`;
flex-basis
の代わりにwidth
の属性で幅を指定すると、結果がよく表示されます.Reference
この問題について(flex-basesおよびwidthプロパティ), 我々は、より多くの情報をここで見つけました https://velog.io/@js43o/flex-basis와-width-속성テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol