Document flexing

Reviewed By: danielbuechele

Differential Revision: D6976135

fbshipit-source-id: e9051b1e583d909aefe76f7aa9505467890a0d4c
This commit is contained in:
Emil Sjölander
2018-02-13 06:37:40 -08:00
committed by Facebook Github Bot
parent 1e3143656d
commit 8f35484262

View File

@@ -6,3 +6,32 @@ editableProperties: ['flexGrow', 'flexShrink', 'flexBasis']
---
## Flex Basis, Grow, and Shrink
### Flex Grow
Flex grow describes how any space within a container should be distributed
among its children along the main axis. After laying out its children, a container will
distribute any remaining space according to the flex grow values specified by its children.
flex grow accepts any floating point value >= 0, with 0 being the default value.
A container will distribute any remaining space among its children weighted by the childs flex grow value.
### Flex Shrink
Flex shrink describes how to shrink children along the main axis in the
case that the total size of the children overflow the size of the container on the main axis.
flex shrink is very similar to flex grow and can be thought of in the same way if
any overflowing size is considered to be negative remaining space.
These two properties also work well together by allowing children to grow and shrink as needed.
flex shrink accepts any floating point value >= 0, with 1 being the default value.
A container will shrink its children weighted by the childs flex shrink value.
### Flex Basis
Flex basis is an axis-independent way of providing the default size of an item
along the main axis. Setting the flex basis of a child is similar to setting the Width of that
child if its parent is a container with FlexDirection = row or setting the Height of a child
if its parent is a container with FlexDirection = column. The flex basis of an item is the
efault size of that item, the size of the item before any flex grow and flex shrink
calculations are performed.