国内最全IT社区平台 联系我们 | 收藏本站
阿里云优惠2
您当前位置:首页 > web前端 > htmlcss > React实战-对比ReactJs与ReactNative中的Flex用法

React实战-对比ReactJs与ReactNative中的Flex用法

来源:程序员人生   发布时间:2016-11-10 08:13:28 阅读次数:4419次

React实战-对照ReactJs与ReactNative中的Flex用法

不管是Web还是移动端,让人花费大量精力和时间的是页面布局,在新Css3中提供了flex为我们解决了很大的问题,我们不要再设置如此多的float, 为个元素居中伤透脑筋,以致网上出现有9种元素居中的做法,跟茴香豆的茴有4种写法1样,自从出现flex后,页面布局就变的轻松多了。但是ReactNative与ReactJs中写法又有很多不同。flex的基本用法我们可以直接看Flex的官方文档便可。

1.ReactJs中flex写法与普通html的不同

相比ReactNative来讲,ReactJs中flex的写法更接近普通html的flex写法,基本上无障碍,无损伤的继承了css的写法,不同主要在于JSX与html中的写法不同,之前的博文中有提到JSX写法的不同,固然这些不同仍然带到了ReactNative中。

2.ReactNative中Flex的写法与ReactJs中写法的不同

除继承了JSX语法对css命名的特殊性,ReactNative相比ReactJs在flex的写法也有所不同。主要表现在以下几点:

a.在ReactNative中flex的参数只支持单1数字

在ReactNative中可以采取flexFlow:'row',但如果写成flexFlow:'row, wrap',将不会起作用。

b.在ReactNative中flexDirection的默许值为column,而css中默许值为row

c.在ReactNative中alignItems默许值为stretch,而css中默许值为flex-start

d.在ReactNative中属性采取JSX中的写法,没有‘-’,并且第2个单词开始首字母大写(1般如此,非绝对正确),而css中1般采取小写加‘-’连接,如:justify-content。

e.Flex的属性值在ReactNative和css中基本相同。

虽然ReactNative中flex属性写法不同,但值却是相同的。如:

flexDirection:'row-reverse'。

至于Flex的用法,还是那句话,想快速入门可以看1眼他人的介绍,细看还是看官网原文,如果你只想简单利用,只需了解主要的几个属性:

l Flex Direction:row,column

定义子元素排列方向,row横向排列,column纵向排列

l Justify Content:flex-start, center, flex-end, space-around,  space-between

定义子元素排列的出发点,间隔空间。

l Align Items:flex-start, center, flex-end, stretch

定义子元素排列方向的纵向排列方式,也就是Flex Direction的垂直方向上的排列方式。

l Flex:number

定义子元素所占空间的比例。定义这个元素,width或height会失效。

了解了以上4个属性的用法,也基本了解了flex的用法,可以随便的布局了。

 

 

生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生