關(guān)于層級的zIndex/elevation
1、zIndex是rn在0.30開始支持的屬性,是可以生效的;
2、shadow和elevation
.shadow(陰影)開頭的樣式現(xiàn)在可以在iOS上應(yīng)用,但在安卓中是不生效的.
.而Android上對應(yīng)的屬性是elevationelevation。
設(shè)置elevation屬性就等價(jià)于使用原生的elevation API,因而也有同樣的限制(比如最明顯的就是需要Android 5.0以上版本)。此外還會影響到層疊視圖在空間z軸上的順序。
結(jié)論
對于Android,兩個(gè)同一層級的定位組件(position:“absolute”)
情況 在z軸的層疊關(guān)系
既沒有ZIndex屬性,又沒有elevation 屬性 由其擺放位置決定的,放在下面的組件會在上層
兩個(gè)組件只有zIndex沒有elevation屬性時(shí) zIndex大的在上層
兩個(gè)組件有elevation屬性 elevation大的在上層
兩個(gè)組件既有zIndex屬性elevation屬性 以elevation為準(zhǔn)
注:對于IOS,同層級的組件,z軸的層疊關(guān)系只與擺放順序與zIndex有關(guān),與elevation無關(guān)
RN中的position屬性的默認(rèn)值是relative。只支持兩個(gè)值relative | absolute。了解CSS的同學(xué)對它應(yīng)該很熟悉,relative指的是相對定位,配合top, right, bottom, left四個(gè)方位屬性,加上z-index堆疊順序來對一個(gè)元素進(jìn)行相對于自己左上角為原點(diǎn)的定位。
absolute即絕對定位,它是相對于父級元素的左上角為原點(diǎn)來定位。
絕對定位的元素不會占據(jù)原有的流式空間,后面的元素會“補(bǔ)上來”,
Note: 在android上,react native 5.7彈出動(dòng)畫只在當(dāng)前彈出位置區(qū)域內(nèi)可以顯示在最上層,區(qū)域外則在內(nèi)層,
如果要效果好,在彈出的區(qū)域內(nèi)停留相對久一點(diǎn).
參考:
http://www.itdecent.cn/p/2bafbef78fd9
https://blog.csdn.net/al4fun/article/details/80253364