React Native Styling Cheat Sheet. It works similarly to ¨C141C in CSS, but in React Native you must use logical pixel units, rather than percents, ems, or any of. From this tutorial we learned the basic concept of the working of the react css, we learned the main uses and the various way we can use the css in the react. We focus on some of the important examples of the css in the react js which revealed the flow of it. Recommended Articles. This is a guide to CSS to React.
Most of the React Native styling material in one page. Imported from the official docs.
Contents
General
Components

Flexbox
| Name | Type | Description | 
|---|---|---|
| alignItems | oneOf flex-start,flex-end,center,stretch | alignItemsaligns children in the cross direction. For example, if children are flowing vertically,alignItemscontrols how they align horizontally. It works likealign-itemsin CSS, except the default value isstretchinstead offlex-start. See https://css-tricks.com/almanac/properties/a/align-items/ for more detail. | 
| alignSelf | oneOf auto,flex-start,flex-end,center,stretch | controls how a child aligns in the cross direction, overriding the alignItemsof the parent. It works likealign-selfin CSS. See https://css-tricks.com/almanac/properties/a/align-self/ for more detail. | 
| borderBottomWidth | number | borderBottomWidthworks likeborder-bottom-widthin CSS. See http://www.w3schools.com/cssref/pr_border-bottom_width.asp for more details. | 
| borderLeftWidth | number | borderLeftWidthworks likeborder-left-widthin CSS. See http://www.w3schools.com/cssref/pr_border-bottom_width.asp for more details. | 
| borderRightWidth | number | borderRightWidthworks likeborder-right-widthin CSS. See http://www.w3schools.com/cssref/pr_border-right_width.asp for more details. | 
| borderTopWidth | number | borderTopWidthworks likeborder-top-widthin CSS. See http://www.w3schools.com/cssref/pr_border-top_width.asp for more details. | 
| borderWidth | number | borderWidthworks likeborder-widthin CSS. See http://www.w3schools.com/cssref/pr_border-width.asp for more details. | 
| bottom | number | bottomis the number of logical pixels to offset the bottom edge of this component. It works similarly tobottomin CSS, but in React Native you must use logical pixel units, rather than percents, ems, or any of that. See https://developer.mozilla.org/en-US/docs/Web/CSS/bottom for more details of howtopaffects layout. | 
| flex | number | In React Native flexdoes not work the same way that it does in CSS.flexis a number rather than a string, and it works according to thecss-layoutlibrary at https://github.com/facebook/css-layout . Whenflexis a positive number, it makes the component flexible and it will be sized proportional to its flex value. So a component withflexset to 2 will take twice the space as a component withflexset to 1. Whenflexis 0, the component is sized according towidthandheightand it is inflexible. Whenflexis -1, the component is normally sized accordingwidthandheight. However, if there’s not enough space, the component will shrink to itsminWidthandminHeight. | 
| flexDirection | oneOf row,row-reverse,column,column-reverse | flexDirectioncontrols which directions children of a container go.rowgoes left to right,columngoes top to bottom, and you may be able to guess what the other two do. It works likeflex-directionin CSS, except the default iscolumn. See https://css-tricks.com/almanac/properties/f/flex-direction/ for more detail. | 
| flexWrap | oneOf wrap,nowrap | flexWrapcontrols whether children can wrap around after they hit the end of a flex container. It works likeflex-wrapin CSS. See https://css-tricks.com/almanac/properties/f/flex-wrap/ for more detail. | 
| height | number | heightsets the height of this component. It works similarly toheightin CSS, but in React Native you must use logical pixel units, rather than percents, ems, or any of that. See http://www.w3schools.com/cssref/pr_dim_width.asp for more details. | 
| justifyContent | oneOf flex-start,flex-end,center,space-between,space-around | justifyContentaligns children in the main direction. For example, if children are flowing vertically,justifyContentcontrols how they align vertically. It works likejustify-contentin CSS. See https://css-tricks.com/almanac/properties/j/justify-content/ for more detail. | 
| left | number | leftis the number of logical pixels to offset the left edge of this component. It works similarly toleftin CSS, but in React Native you must use logical pixel units, rather than percents, ems, or any of that. See https://developer.mozilla.org/en-US/docs/Web/CSS/left for more details of howleftaffects layout. | 
| margin | number | Setting marginhas the same effect as setting each ofmarginTop,marginLeft,marginBottom, andmarginRight. | 
| marginBottom | number | marginBottomworks likemargin-bottomin CSS. See http://www.w3schools.com/cssref/pr_margin-bottom.asp for more details. | 
| marginHorizontal | number | Setting marginHorizontalhas the same effect as setting bothmarginLeftandmarginRight. | 
| marginLeft | number | marginLeftworks likemargin-leftin CSS. See http://www.w3schools.com/cssref/pr_margin-left.asp for more details. | 
| marginRight | number | marginRightworks likemargin-rightin CSS. See http://www.w3schools.com/cssref/pr_margin-right.asp for more details. | 
| marginTop | number | marginTopworks likemargin-topin CSS. See http://www.w3schools.com/cssref/pr_margin-top.asp for more details. | 
| marginVertical | number | Setting marginVerticalhas the same effect as setting bothmarginTopandmarginBottom. | 
| maxHeight | number | maxHeightis the maximum height for this component, in logical pixels. It works similarly tomax-heightin CSS, but in React Native you must use logical pixel units, rather than percents, ems, or any of that. See http://www.w3schools.com/cssref/pr_dim_max-height.asp for more details. | 
| maxWidth | number | maxWidthis the maximum width for this component, in logical pixels. It works similarly tomax-widthin CSS, but in React Native you must use logical pixel units, rather than percents, ems, or any of that. See http://www.w3schools.com/cssref/pr_dim_max-width.asp for more details. | 
| minHeight | number | minHeightis the minimum height for this component, in logical pixels. It works similarly tomin-heightin CSS, but in React Native you must use logical pixel units, rather than percents, ems, or any of that. See http://www.w3schools.com/cssref/pr_dim_min-height.asp for more details. | 
| minWidth | number | minWidthis the minimum width for this component, in logical pixels. It works similarly tomin-widthin CSS, but in React Native you must use logical pixel units, rather than percents, ems, or any of that. See http://www.w3schools.com/cssref/pr_dim_min-width.asp for more details. | 
| padding | number | paddingworks likepaddingin CSS. It’s like setting each ofpaddingTop,paddingBottom,paddingLeft, andpaddingRightto the same thing. See http://www.w3schools.com/css/css_padding.asp for more details. | 
| paddingBottom | number | paddingBottomworks likepadding-bottomin CSS. See http://www.w3schools.com/cssref/pr_padding-bottom.asp for more details. | 
| paddingHorizontal | number | Setting paddingHorizontalis like setting both ofpaddingLeftandpaddingRight. | 
| paddingLeft | number | paddingLeftworks likepadding-leftin CSS. See http://www.w3schools.com/cssref/pr_padding-left.asp for more details. | 
| paddingRight | number | paddingRightworks likepadding-rightin CSS. See http://www.w3schools.com/cssref/pr_padding-right.asp for more details. | 
| paddingTop | number | paddingTopworks likepadding-topin CSS. See http://www.w3schools.com/cssref/pr_padding-top.asp for more details. | 
| paddingVertical | number | Setting paddingVerticalis like setting both ofpaddingTopandpaddingBottom. | 
| position | oneOf absolute,relative | positionin React Native is similar to regular CSS, but everything is set torelativeby default, soabsolutepositioning is always just relative to the parent. If you want to position a child using specific numbers of logical pixels relative to its parent, set the child to haveabsoluteposition. If you want to position a child relative to something that is not its parent, just don’t use styles for that. Use the component tree. See https://github.com/facebook/css-layout for more details on howpositiondiffers between React Native and CSS. | 
| right | number | rightis the number of logical pixels to offset the right edge of this component. It works similarly torightin CSS, but in React Native you must use logical pixel units, rather than percents, ems, or any of that. See https://developer.mozilla.org/en-US/docs/Web/CSS/right for more details of howrightaffects layout. | 
| top | number | topis the number of logical pixels to offset the top edge of this component. It works similarly totopin CSS, but in React Native you must use logical pixel units, rather than percents, ems, or any of that. See https://developer.mozilla.org/en-US/docs/Web/CSS/top for more details of howtopaffects layout. | 
| width | number | widthsets the width of this component. It works similarly towidthin CSS, but in React Native you must use logical pixel units, rather than percents, ems, or any of that. See http://www.w3schools.com/cssref/pr_dim_width.asp for more details. | 
| zIndex | number | zIndexcontrols which components display on top of others. Normally, you don’t usezIndex. Components render according to their order in the document tree, so later components draw over earlier ones.zIndexmay be useful if you have animations or custom modal interfaces where you don’t want this behavior. It works like the CSSz-indexproperty - components with a largerzIndexwill render on top. Think of the z-direction like it’s pointing from the phone into your eyeball. See https://developer.mozilla.org/en-US/docs/Web/CSS/z-index for more detail. | 
Shadow Prop Types IOS
| Name | Type | Description | 
|---|---|---|
| shadowColor | customColorPropType | Sets the drop shadow color | 
| shadowOffset | customReactPropTypes.shape( {width: ReactPropTypes.number, height: ReactPropTypes.number} ) | Sets the drop shadow offset | 
| shadowOpacity | number | Sets the drop shadow opacity (multiplied by the color’s alpha component) | 
| shadowRadius | number | Sets the drop shadow blur radius | 
Transforms
| Name | Type | 
|---|---|
| decomposedMatrix | customDecomposedMatrixPropType | 
| transform | customReactPropTypes.arrayOf( ReactPropTypes.oneOfType([ ReactPropTypes.shape({perspective: ReactPropTypes.number}), ReactPropTypes.shape({rotate: ReactPropTypes.string}), ReactPropTypes.shape({rotateX: ReactPropTypes.string}), ReactPropTypes.shape({rotateY: ReactPropTypes.string}), ReactPropTypes.shape({rotateZ: ReactPropTypes.string}), ReactPropTypes.shape({scale: ReactPropTypes.number}), ReactPropTypes.shape({scaleX: ReactPropTypes.number}), ReactPropTypes.shape({scaleY: ReactPropTypes.number}), ReactPropTypes.shape({translateX: ReactPropTypes.number}), ReactPropTypes.shape({translateY: ReactPropTypes.number}), ReactPropTypes.shape({skewX: ReactPropTypes.string}), ReactPropTypes.shape({skewY: ReactPropTypes.string}) ]) ) | 
| transformMatrix | customTransformMatrixPropType | 
Image
| Name | Required | Type | Platforms | Description | 
|---|---|---|---|---|
| …Flexbox | ||||
| …ShadowPropTypesIOS | ||||
| …Transforms | ||||
| backfaceVisibility | false | oneOf visible,hidden | ||
| backgroundColor | false | ColorPropType | ||
| borderBottomLeftRadius | false | number | ||
| borderBottomRightRadius | false | number | ||
| borderColor | false | ColorPropType | ||
| borderRadius | false | number | ||
| borderTopLeftRadius | false | number | ||
| borderTopRightRadius | false | number | ||
| borderWidth | false | number | ||
| opacity | false | number | ||
| overflow | false | oneOf visible,hidden | ||
| resizeMode | false | oneOf Object.keys(ImageResizeMode)) | ||
| tintColor | false | ColorPropType | Changes the color of all the non-transparent pixels to the tintColor. | |
| overlayColor | false | string | android | When the image has rounded corners, specifying an overlayColor will cause the remaining space in the corners to be filled with a solid color. This is useful in cases which are not supported by the Android implementation of rounded corners: - Certain resize modes, such as ‘contain’ - Animated GIFs A typical way to use this prop is with images displayed on a solid background and setting the overlayColorto the same color as the background. For details of how this works under the hood, see http://frescolib.org/docs/rounded-corners-and-circles.html | 
ScrollView
| Name | Required | Type | Platforms | Description | 
|---|---|---|---|---|
| …Flexbox | ||||
| …ShadowPropTypesIOS | ||||
| …Transforms | ||||
| backfaceVisibility | false | oneOf visible,hidden | ||
| backgroundColor | false | ColorPropType | ||
| borderBottomColor | false | ColorPropType | ||
| borderBottomLeftRadius | false | number | ||
| borderBottomRightRadius | false | number | ||
| borderBottomWidth | false | number | ||
| borderColor | false | ColorPropType | ||
| borderLeftColor | false | ColorPropType | ||
| borderLeftWidth | false | number | ||
| borderRadius | false | number | ||
| borderRightColor | false | ColorPropType | ||
| borderRightWidth | false | number | ||
| borderStyle | false | oneOf solid,dotted,dashed | ||
| borderTopColor | false | ColorPropType | ||
| borderTopLeftRadius | false | number | ||
| borderTopRightRadius | false | number | ||
| borderTopWidth | false | number | ||
| borderWidth | false | number | ||
| opacity | false | number | ||
| overflow | false | oneOf visible,hidden | ||
| elevation | false | number | android | (Android-only) Sets the elevation of a view, using Android’s underlying elevation API. This adds a drop shadow to the item and affects z-order for overlapping views. Only supported on Android 5.0+, has no effect on earlier versions. | 


Text
| Name | Required | Type | Platforms | Description | 
|---|---|---|---|---|
| …View | ||||
| color | false | ColorPropType | ||
| fontFamily | false | string | ||
| fontSize | false | number | ||
| fontStyle | false | oneOf normal,italic | ||
| fontWeight | false | oneOf normal,bold,100,200,300,400,500,600,700,800,900 | Specifies font weight. The values ‘normal’ and ‘bold’ are supported for most fonts. Not all fonts have a variant for each of the numeric values, in that case the closest one is chosen. | |
| lineHeight | false | number | ||
| textAlign | false | oneOf auto,left,right,center,justify | Specifies text alignment. The value ‘justify’ is only supported on iOS and fallbacks to lefton Android. | |
| textDecorationLine | false | oneOf none,underline,line-through,underline,line-through | ||
| textShadowColor | false | ColorPropType | ||
| textShadowOffset | false | ReactPropTypes.shape( {width: ReactPropTypes.number, height: ReactPropTypes.number} ) | ||
| textShadowRadius | false | number | ||
| textAlignVertical | false | oneOf auto,top,bottom,center | android | |
| letterSpacing | false | number | ios | |
| textDecorationColor | false | ColorPropType | ios | |
| textDecorationStyle | false | oneOf solid,double,dotted,dashed | ios | |
| writingDirection | false | oneOf auto,ltr,rtl | ios | 
View
| Name | Required | Type | Platforms | Description | 
|---|---|---|---|---|
| …Flexbox | ||||
| …ShadowPropTypesIOS | ||||
| …Transforms | ||||
| backfaceVisibility | false | oneOf visible,hidden | ||
| backgroundColor | false | ColorPropType | ||
| borderBottomColor | false | ColorPropType | ||
| borderBottomLeftRadius | false | number | ||
| borderBottomRightRadius | false | number | ||
| borderBottomWidth | false | number | ||
| borderColor | false | ColorPropType | ||
| borderLeftColor | false | ColorPropType | ||
| borderLeftWidth | false | number | ||
| borderRadius | false | number | ||
| borderRightColor | false | ColorPropType | ||
| borderRightWidth | false | number | ||
| borderStyle | false | oneOf solid,dotted,dashed | ||
| borderTopColor | false | ColorPropType | ||
| borderTopLeftRadius | false | number | ||
| borderTopRightRadius | false | number | ||
| borderTopWidth | false | number | ||
| borderWidth | false | number | ||
| opacity | false | number | ||
| overflow | false | oneOf visible,hidden | ||
| elevation | false | number | android | (Android-only) Sets the elevation of a view, using Android’s underlying elevation API. This adds a drop shadow to the item and affects z-order for overlapping views. Only supported on Android 5.0+, has no effect on earlier versions. | 
Appendix
Types
ReactPropTypes.number
React Native Css File
ReactPropTypes.string
Css Cheat Sheet With Examples
ReactPropTypes.oneOf([values])
- React Native Tutorial
- Core Concepts
- Components and APIs
- React Native Useful Resources
- Selected Reading
There are a couple of ways to style your elements in React Native.
Stylesheet React Native
You can use the style property to add the styles inline. However, this is not the best practice because it can be hard to read the code.
In this chapter, we will use the Stylesheet for styling.
Container Component
In this section, we will simplify our container component from our previous chapter.

App.js
Presentational Component
In the following example, we will import the StyleSheet. At the bottom of the file, we will create our stylesheet and assign it to the styles constant. Note that our styles are in camelCase and we do not use px or % for styling.
To apply styles to our text, we need to add style = {styles.myText} property to the Text element.
Css Cheat Sheet
PresentationalComponent.js
When we run the app, we will receive the following output.
