React Native Style Props Reference

All React Native style properties with type, platform support and units.

Searchable React Native StyleSheet property reference covering layout, color, typography, border, shadow and transform props — with type, accepted values, iOS/Android support and gotchas.

Why does flexDirection default to column in React Native?

React Native chose 'column' as the default because mobile layouts are predominantly vertical stacks, whereas the web CSS default is 'row'. If you assume CSS defaults your layout will look rotated, so set flexDirection explicitly when in doubt.

React Native StyleSheet, all in one place

React Native styling looks like CSS but is its own subset: camelCased property names, no cascade, dp units instead of px, and a Yoga flexbox engine with different defaults. This reference lists the properties you actually use day to day — grouped by Layout, Typography, Color, Border, Shadow, Transform and Image — with the value type, accepted values and the platform each one runs on.

How it works

Every style you write is a plain object that React Native passes to its native layout engine (Yoga) and to platform views. The lookup table here records three things per property: the JavaScript value type (number, string, enum, color, object or array), the realistic accepted values, and whether it is honored on iOS, Android or both. Search matches against the name, the values and the notes, so you can also find a prop by what it does (“italic”, “scroll”, “rotate”). The platform filter keeps Both entries visible while hiding props that only apply to the other platform.

Tips and gotchas

  • flexDirection defaults to column, the opposite of the web — the single most common porting bug.
  • Shadows are split: use shadowColor/shadowOffset/shadowOpacity/shadowRadius for iOS and elevation for Android, and set both for cross-platform parity.
  • lineHeight is an absolute dp value, not a multiplier like in CSS.
  • transform takes an array of single-key objects, e.g. [{ rotate: '45deg' }, { scale: 1.2 }], applied in order.
  • Add overflow: 'hidden' to round-cornered containers on Android so child content is clipped to the radius.