CSS flex-basis 属性

CSS flex-basis 属性指定了 flex 元素在主轴方向上的初始大小。如果不使用 box-sizing 改变盒模型的话,那么这个属性就决定了 flex 元素的内容盒(content-box)的尺寸。


实例

把第二个弹性项目的初始长度设置为 100 像素:

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <style>
  5. #main {
  6. width: 300px;
  7. height: 100px;
  8. border: 1px solid #c3c3c3;
  9. display: flex;
  10. }
  11. #main div {
  12. flex-grow: 0;
  13. flex-shrink: 0;
  14. flex-basis: 50px;
  15. }
  16. #main div:nth-of-type(2) {
  17. flex-basis: 100px;
  18. }
  19. </style>
  20. </head>
  21. <body>
  22. <h1>flex-basis 属性</h1>
  23. <p>将弹性项目的初始长度设置为 50 像素;例外是,将第二个弹性项目的初始长度设置为 100 像素:</p>
  24. <div id="main">
  25. <div style="background-color:coral;">50px</div>
  26. <div style="background-color:lightblue;">100px</div>
  27. <div style="background-color:khaki;">50px</div>
  28. <div style="background-color:pink;">50px</div>
  29. <div style="background-color:lightgrey;">50px</div>
  30. </div>
  31. <p><b>注释:</b>Internet Explorer 10 以及更早的版本不支持 flex-basis 属性。</p>
  32. </body>
  33. </html>

定义和用法

flex-basis 属性规定弹性项目的初始长度。

注释:如果元素不是弹性项目,则 flex 属性无效。

备注: 当一个元素同时被设置了 flex-basis (除值为 auto 外) 和 width (或者在 flex-direction: column 情况下设置了height) , flex-basis 具有更高的优先级。
默认值:auto
继承:
动画制作:支持。请参阅:动画相关属性
版本:CSS3
JavaScript 语法:object.style.flexBasis="200px"

浏览器支持

表格中的数字注明了完全支持该属性的首个浏览器版本。带 -webkit- 或 -moz- 的数字表示使用前缀的首个版本。

属性
flex-basis29.021.0 -webkit-11.028.018.0 -moz-9.06.1 -webkit-17.0

CSS 语法

  1. flex-basis: number|auto|initial|inherit;
属性值
描述
number长度单位或百分百,规定弹性项目的初始长度。
auto默认值。长度等于弹性项目的长度。如果该项目未规定长度,则长度将依据其内容。
initial将此属性设置为其默认值。参阅 initial
inherit从其父元素继承此属性。参阅 inherit

相关页面

CSS3 教程: CSS3 弹性框

CSS 参考手册:flex-direction 属性

CSS 参考手册:flex-flow 属性

CSS 参考手册:flex-grow 属性

CSS 参考手册:flex-shrink 属性

CSS 参考手册:flex-wrap 属性

分类导航