ReactNative
的样式是 CSS
样式的一个子集,并且属性名称与 CSS
中规定的也不完全相同。
常见的引用样式的几种方法,包括内嵌方式,外联方式和混合方式,还可以把样式定义在单独的文件中,通过 import
引用。
1. 内嵌方式
export default class appProject extends Component {
render() {
return (
<View style={
{
marginTop:200,
marginLeft:5,
marginRight:5,
height:84,
flexDirection:'row',
backgroundColor:'#FF0067',
}
}>
</View>
)
}
}
2. 外联方式
const Styles = StyleSheet.create({
container: {
marginTop:200,
marginLeft:5,
marginRight:5,
height:84,
flexDirection:'row',
backgroundColor:'#FF0067',
}
});
3. 混合方式
export default class appProject extends Component {
render() {
return (
//外层容器
<View style={[Styles.container,Styles.bg,{color:'red'}]}>
</View>
)
}
}
4.import 引用
import React from 'react'
import {
StyleSheet,
} from 'react-native';
const styles = StyleSheet.create({
container: {
marginTop:200,
marginLeft:5,
marginRight:5,
height:84,
flexDirection:'row',
},
bg:{
backgroundColor:'#FF0067',
}
});
module.exports = styles;
通过 import
进行引入
import styles from './styles/style';
属性名称 取值 对应 css 属性
backgroundColor
| color
| 对应 CSS 中的 background-color
属性属性名称 取值 对应 css 属性
width
|number
| 对应 CSS 中的 width
属性height
| number
| 对应 CSS 中的 height
属性属性名称 取值 对应 css 属性
margin
| number
| 对应 CSS 中的 margin
属性,不同的是,只能定义一个参数,用以表示上、右、下、左 4 个方位的外补白marginHorizontal
| number
| CSS 中没有对应的属性,相当于同时设置 marginRight
和 marginLeft
marginVertical
| number
| CSS 中没有对应的属性,相当于同时设置 marginTop
和 marginBottom
marginTop
| number
| 对应 CSS 中的 margin-top
属性marginRight
| number
| 对应 CSS 中的 margin-right
属性marginBottom
| number
| 对应 CSS 中的 margin-bottom
属性marginLeft
| number
| 对应 CSS 中的 margin-left
属性属性名称 取值 对应 css 属性
padding
| number 对应 CSS 中的 padding
属性,不同的是,只能定义一个参数,用以表示上、右、下、左 4 个方位的内补白paddingHorizontal
| number CSS 中没有对应的属性,相当于同时设置 paddingRight
和 paddingLeft
paddingVertical
| number CSS 中没有对应的属性,相当于同时设置 paddingTop
和 paddingBottom
paddingTop
| number 对应 CSS 中的 padding-top
属性paddingRight
| number 对应 CSS 中的 padding-right
属性paddingBottom
| number | 对应 CSS 中的 padding-bottom
属性paddingLeft
| number | 对应 CSS 中的 padding-left
属性属性名称 取值 对应 css 属性
borderStyle
| solid, dotted, dashed
对应 CSS 中的 border-style
属性,但阉割了 none, hidden, double, groove, ridge, inset, outset
取值,且无方向分拆属性borderWidth
| number
| 对应 CSS 中的 border-width
属性borderTopWidth
| number 对应 CSS 中的 border-top-width
属性borderRightWidth
| number 对应 CSS 中的 border-right-width
属性borderBottomWidth
| number 对应 CSS 中的 border-bottom-width
属性borderLeftWidth
| number 对应 CSS 中的 border-left-width
属性borderColor
| color | 对应 CSS 中的 border-color
属性borderTopColor
| color
| 对应 CSS 中的 border-top-color
属性borderRightColor
| color
| 对应 CSS 中的 border-right-color
属性borderBottomColor
| color
| 对应 CSS 中的 border-bottom-color
属性borderLeftColor
| color
| 对应 CSS 中的 border-left-color
属性borderRadius
| number
| 对应 CSS 中的 border-radius
属性borderTopLeftRadius
| number
| 对应 CSS 中的 border-top-left-radius
属性borderTopRightRadius
| number
| 对应 CSS 中的 border-top-right-radius
属性borderBottomLeftRadius
| number
| 对应 CSS 中的 border-bottom-left-radius
属性borderBottomRightRadius
| number
| 对应 CSS 中的 border-bottom-right-radius
属性属性名称 取值 对应 css 属性
position
| absolute, relative
对应 CSS 中的 position
属性,但阉割了 static, fixed
取值top
| number | 对应 CSS 中的 top
属性right
| number | 对应 CSS 中的 right
属性bottom
| number | 对应 CSS 中的 bottom
属性left
| number | 对应 CSS 中的 left
属性属性名称 取值 对应 css 属性
color
| color | 对应 CSS 中的 color
属性fontFamily
| string | 对应 CSS 中的 font-family
属性fontSize
| number | 对应 CSS 中的 font-size
属性fontStyle
| normal, italic
对应 CSS 中的 font-style
属性,但阉割了 oblique
取值fontWeight
| normal, bold 100~900
对应 CSS 中的 font-weight
属性,但阉割了 bolder, lighter
取值lineHeight
| number | 对应 CSS 中的 line-height
属性textAlign
| auto, left, right, center, justifyiOS
| 对应 CSS 中的 text-align
属性,增加了 auto
取值textAlignVerticalAndroid
| auto, top, bottom, center
| 对应 CSS 中的 vertical-align
属性,增加了 auto
取值,center
取代了 middle
,并阉割了 - baseline, sub
等值textShadowColor
| color | 对应 CSS 中的 text-shadow
属性中的颜色定义textShadowOffset
| {width: number, height: number}
| 对应 CSS 中的 text-shadow
属性中的阴影偏移定义textShadowRadius
| number | 在 CSS 中,阴影的圆角大小取决于元素的圆角定义,不需要额外定义letterSpacingiOS
| number | 对应 CSS 中的 letter-spacing
属性,但取值不同textDecorationColoriOS
| color | 对应 CSS 中的 text-decoration-color
属性textDecorationLineiOS
| none, underline, line-through, underline line-through
| 对应 CSS 中的 text-decoration-line
属性,但阉割了 overline, blink 取
值textDecorationStyleiOS
| solid, double, dotted, dashed
| 对应 CSS 中的 text-decoration-style
属性,但阉割了 wavy
取值writingDirectioniOS
| auto, ltr, rtl
| 对应 CSS 中的 direction
属性,增加了 auto
取值属性名称 取值 对应 css 属性
flex
| number | 对应 CSS 中的 flex
属性flexDirection
| row, column
| 对应 CSS 中的 flex-direction
属性,但阉割了 row-reverse, column-reverse
取值flexWrap
| wrap, nowrap
| 对应 CSS 中的 flex-wrap
属性,但阉割了 wrap-reverse
取值justifyContent
| flex-start, flex-end, center, space-between, space-around
| 对应 CSS 中的 justify-content
属性,但阉割了 stretch
取值。alignItems
| flex-start, flex-end, center, stretch
| 对应 CSS 中的 align-items
属性,但阉割了 baseline
取值。alignSelf
| auto, flex-start, flex-end, center, stretch
| 对应 CSS 中的 align-self
属性,但阉割了 baseline
取值属性名称 取值 对应 css 属性
transform
| [{perspective: number}, {rotate: string}, {rotateX: string}, {rotateY: string}, {rotateZ: string}, {scale: number}, {scaleX: number}, {scaleY: number}, - - - {translateX: number}, {translateY: number}, {skewX: string}, {skewY: string}]
| 对应 CSS 中的 transform
属性transformMatrix
| TransformMatrixPropType
| 类似于 CSS 中 transform
属性的 matrix()
和 matrix3d()
函数backfaceVisibility
| visible, hidden
| 对应 CSS 中的 backface-visibility
属性属性名称 取值 对应 css 属性
resizeMode
| cover, contain, stretch
其中,contain
是指无论如何图片都包含在指定区域内,假设设置的宽度高度比图片大,则图片居中显示,否则,图片等比缩小显示overflow
| visible, hidden
超出部分是否显示,hidden
为隐藏tintColor
| number 着色,rgb
字符串类型opacity
| number 透明度属性名称 取值 对应 css 属性
rotation
– 旋转scaleX
– 水平方向缩放scaleY
– 垂直方向缩放translateX
– 水平方向平移translateY
– 水平方向平移版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://shq5785.blog.csdn.net/article/details/120104399
内容来源于网络,如有侵权,请联系作者删除!