03-Flexible Box

概念

React-Native 中所有的布局均采用 Flex 布局。采用 Flex 布局的元素,称为 Flex 容器(flex container),简称"容器"。它的所有子元素自动成为容器成员,称为 Flex 项目(flex item),简称"项目"。

属性

flex-direction

决定主轴的方向


  • column: 垂直方向, 起点在上边。React-Native 默认值,与 Web 不一致。
  • column-reverse: 垂直方向,起点在下下边
  • row: 水平方向,起点在左边。 Web 默认值
  • row-reverse: 水平方向,起点在右边

flex-wrap

子元素宽度超出父容器时,是否要折行,以及如何折行

  • nowrap: 默认值, 只排在一行上
  • wrap: 超出折到下一行
  • wrap-reverse: 超出后,折到上方

justifyContent

子元素沿着主轴的排列方式


  • flex-start: 默认值。从主轴起始端开始分布,第一个子元素与主轴起始对齐,同时后续所有子元素分别与前一个对齐
  • flex-end: 从主轴末端开始分布,最后一个子元素与主轴末端对齐,同时前面所有子元素分别与后一个对齐。
  • center: 所有子元素向主轴中点靠拢.保证第一个子元素距主轴起始端的距离与最后一个子元素距主轴末端的距离相同。
  • space-between: 平均分配所有子元素之间的空间,保证相邻子元素之间的距离相同,同时第一个子元素与主轴起始端对齐,最后一个子元素与主轴末端对齐。
  • space-around:平均分配所有子元素之间的空间,保证相邻子元素之间的距离相同,同时第一个子元素到主轴起始端的距离与每行最后一个元素到主轴末端的距离是相邻元素之间距离的一半。
  • space-evenly:完全平均分布。

alignItems

子元素沿着次轴的排列方式


  • flex-start:位于起始端
  • flex-end:位于末端
  • center: 所有子元素向次轴中点靠拢,如果子元素的总高度高于容器,那么两端溢出距离相同。
  • stretch: 子元素在次轴方向上被拉伸到充满容器。

alignSelf

子元素自定义与其他元素不一致的属性,覆盖父元素中的 alignItems。

flex

类似于 Android 中的 Weight,定义当前元素在容器中的占比


参考

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • H5移动端知识点总结 阅读目录 移动开发基本知识点 calc基本用法 box-sizing的理解及使用 理解dis...
    Mx勇阅读 4,674评论 0 26
  • 移动开发基本知识点 一.使用rem作为单位 html { font-size: 100px; } @media(m...
    横冲直撞666阅读 3,559评论 0 6
  • (这是15年初学css时记的笔记) 选择器 简单选择器 标签选择器 直接把标签名加前面。 类选择器 用.+ cla...
    burningalive阅读 1,053评论 0 0
  • 弹性盒模型Flex指南 Web layout 是Web UI中的基础架构, 重要性不言而喻. 传统的盒模型, 借助...
    raining_804f阅读 508评论 0 0
  • Flexbox 理解Flexbox:你需要知道的一切 深入理解 flex 布局以及计算 一劳永逸的搞定 flex ...
    _无为_阅读 898评论 0 0