如何在JSS格式中编写多CSS属性?适配iOS 9.3及更早版本
解决JSS中CSS前缀兼容iOS 9.3及更早版本的问题
嘿,你的问题我get到啦——直接在JSS对象里重复写display属性肯定行不通,因为JS对象的键是唯一的,后面的声明会直接覆盖掉前面的!
正确的做法是用数组来声明多个相同属性的取值,JSS原生支持这种写法,会把数组里的每一项都转换成独立的CSS声明,完美保留所有需要的前缀。
正确的JSS写法
const styles = { root: { display: ['-webkit-box', '-moz-box', '-ms-flexbox', '-webkit-flex', 'flex'] } };
这样编译后生成的CSS就是你需要的兼容代码:
.root { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; display: flex; }
这种写法能确保iOS 9.3及更早版本的webkit内核正确识别到带前缀的display属性,实现预期的弹性布局效果。
内容的提问来源于stack exchange,提问作者Adith Widya Pradipta
相关产品推荐
相关产品推荐

