RN中基本都使用flexbox進行布局水评,但語法和常規(guī)的CSS不同:
- 屬性名都使用駝峰結(jié)構,而不是中劃線型型,如:alignItems庵芭,不能寫align-items
- RN中display默認是 flex,另一個值是:‘none’
- RN中flexDirection默認是 column
- 屬性取值基本就兩種:數(shù)值和字符串,數(shù)值類如width的寫法是width:200涯曲,不能帶單位‘px’,與之類似的還有height,marginTop,left等在常規(guī)CSS中需要帶px的屬性野哭;對于不帶px的都要寫成字符串的形式,例如position:"absolute"
- 屬性的寫法:可帶雙引號幻件,也可不帶拨黔。如position:"absolute"或者"position":"absolute"
- RN中CSS規(guī)則之間用逗號","分隔,常規(guī)CSS中用分號";"
- 陰影的實現(xiàn):RN端不支持box-shadow傲武,用四個類似的屬性代替ios蓉驹,Android上用elevation,elevation不能設置陰影顏色,統(tǒng)一灰色
shadowOffset: { width: 0, height: 5 },
shadowRadius: 3,
shadowColor: '#41464b',
shadowOpacity: 0.1,
elevation: 4
- RN中 postion只有‘relative’ 和 ‘a(chǎn)bsolute’ 揪利;默認為‘relative’态兴。在Android中如果子元素使用absolute,且其寬高超過父元素疟位,會被父元素的邊界所截斷
- RN 中所有基本組件默認寬度都是100%瞻润,如Text,View,TextInput。當其參與flex布局時甜刻,Text绍撞,TextInput寬度會變?yōu)樽陨韮?nèi)容寬度
- View 與div類似,但View不能單獨使用得院,必須包含其他組件
- box-sizing 默認值:'border-box'
- 所有默認值如下:
box-sizing: border-box;
position: relative;
display: flex;
flex-direction: column;
align-items: stretch;
flex-shrink: 0;
border: 0 solid black;
margin: 0;
padding: 0