We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
设置 overflow 为 auto 或scroll,仍然会撑开 flex item
flex item 是指 display 属性为 flex或inline-flex 的元素的子元素;
flex item
flex
inline-flex
flex item 自带的默认属性是:
flex-grow: 0; // 不会增长 flex-shrink: 1; // 会塌缩 flex-basis: auto; // 初始的宽度 min-width: auto; // 原来是并没有 auto 取值的,flex layout 规范加了这个。。。
这种情况下,flex-basis 决定了 flex item 的宽度将首先取决于内容的宽度。
flex-basis
flex-basis:
min-width设置为 非 auto 后,则元素的宽度从这个值开始算,
min-width
非 auto
优先级:min-width/max-width > flex-basis > width
??为什么 flex item 要把 min-width 设置为 auto 呢?和 none 有什么区别?
min-width 为 auto 时,其计算值将使用元素的最小内容宽度。如果有设置百分比或具体数值的宽度,则在设置的宽度与最小内容宽度中取较小值。如果元素内没有内容,计算值则是0。
0
所以在前文所描述的问题下,min-width 的值是默认的auto,因此计算后元素最小宽度是最小内容宽度。这种情况下,显式的设置 min-width 为数值或百分比,就没有了这一特性。弹性元素在扩大过程中,遇到父元素的边界也就停止了继续扩大。
auto
The text was updated successfully, but these errors were encountered:
No branches or pull requests
问题
设置 overflow 为 auto 或scroll,仍然会撑开 flex item
原因
flex item
是指 display 属性为flex
或inline-flex
的元素的子元素;flex item 自带的默认属性是:
这种情况下,
flex-basis
决定了 flex item 的宽度将首先取决于内容的宽度。flex-basis:
min-width
设置为非 auto
后,则元素的宽度从这个值开始算,优先级:min-width/max-width > flex-basis > width
??为什么 flex item 要把 min-width 设置为 auto 呢?和 none 有什么区别?
min-width 为 auto 时,其计算值将使用元素的最小内容宽度。如果有设置百分比或具体数值的宽度,则在设置的宽度与最小内容宽度中取较小值。如果元素内没有内容,计算值则是
0
。所以在前文所描述的问题下,min-width 的值是默认的
auto
,因此计算后元素最小宽度是最小内容宽度。这种情况下,显式的设置min-width
为数值或百分比,就没有了这一特性。弹性元素在扩大过程中,遇到父元素的边界也就停止了继续扩大。Reference
The text was updated successfully, but these errors were encountered: