React Native应用中的样式
RN中样式与CSS名称类似,但是本质上不同 —— RN应用中没有浏览器内核!!!
例如:RN中的组件不分“行内”、“行内块”、“块级”;所有的容器默认都使用“弹性布局(纵向)”。
RN组件可以使用标准CSS中绝大部分的属性,但是需要注意如下特点:
1、组件没有class属性,只有style属性,且必须绑定为“属性对象”,例如:style={ obj };
2、RN样式属性对象名全部采用小驼峰命名法,例如:borderLeftWidth;
3、RN中的尺寸没有单位,都是指与设备像素密度无关的逻辑像素点;
4、RN样式称为SS,没有继承特性(没C),子元素不会继承父元素的样式 —— Text中的Text除外;
5、RN中的样式分为“行内样式”和“内部样式”两种。
style={obj}
style={s.danger}
let s = StyleSheet.create({
danger: {color: '#f00', ....}
})
以下为RN可用的样式
alignItems
alignSelf,
backfaceVisibility,
backgroundColor,
borderBottomColor,
borderBottomLeftRadius,
borderBottomRightRadius,
borderBottomWidth,
borderColor,
borderLeftColor,
borderLeftWidth,
borderRadius,
borderRightColor,
borderRightWidth,
borderStyle,
borderTopColor,
borderTopLetRadius,
borderTopRightRadius,
borderTopWidth,
borderWidth,
bottom,
color,
flex
flexDirection,
flexWrap,
fontFamily,
fontSize,
fontStyle,
fontWeigt,
height,
justifyContent,
left,
letterSpacing,
lineHeight,
margin,
marginBottom,
marginHorizontal,
marginLeft,
marginRight,
marginTop,
marginVertical,
opacity,
overflow,
padding,
paddingBottom,
paddingHorizontal,
paddingLeft,
paddingRight,
paddingTop,
paddingVertical,
position,
resizeMode,
right,
rotation,
scaleX,
scaleY,
shadowColor,
shadowOffset,
shadowOpacity,
shadowRadius,
textAlign,
textDecorationColor,
textDecorationLine,
textDecorationStyle,
tintColor,
top,
transform,
transformMatrix,
translateX,
translateY,
width,
writingDirection