ReactNative之CSS布局(二)

作者: 袁峥 | 来源:发表于2017-05-05 19:06 被阅读2147次

前言

眼看很多公司都开始尝试使用ReactNative,达到跨平台开发,最近也写了很多文章,希望让更多想了解的同学快速上手ReactNative.

如果喜欢我的文章,可以关注我微博:袁峥Seemygo

一、ReactNative之CSS布局

  • 一款App要想吸引人的眼球,必须要有好的界面布局,一直以来我的风格都是根据需求讲解,接下来本篇文章将通过需求给大家介绍ReactNative中的布局
  • ReactNative支持CSS中的布局属性,因此可以使用CSS布局属性
  • CSS颜色大全,下面会用到,点击这CSS颜色代码大全

1.1 视图边框

  • 什么时候使用?想设置自己周边有边框的时候
  • 注意点:一定要设置边框宽度
borderBottomWidth number 底部边框宽度
borderLeftWidth number 左边框宽度
borderRightWidth number 右边框宽度
borderTopWidth number 顶部边框宽度
borderWidth number 边框宽度
border<Bottom|Left|Right|Top>Color 各方向边框的颜色,<>表示连着一起,例如borderBottomColor
borderColor 边框颜色

1.2 尺寸

width number
height number

1.3 外边距

  • 设置组件与组件之间的间距
    • 注意:第一个组件比较特殊,参照父组件,与父控件之间的间距。
    • 其他组件间距,相对于上一个组件
  • 什么时候使用?想设置自己在父控件的位置的时候使用
margin number 外边距
marginBottom number 下外边距
marginHorizontal number 左右外边距
marginLeft number 左外边距
marginRight number 右外边距
marginTop number 上外边距
marginVertical number 上下外边距
  • 注意marginRight和width冲突,如果设置了width,marginRight无效。
  • 正确做法
注意.png

1.4 内边距

  • 设置子控件与当前控件的位置
  • 什么时候使用?想设置自己的子控件相对自己的位置的时候使用
padding number 内边距
paddingBottom number 下内边距
paddingHorizontal number 左右内边距
paddingLeft number 做内边距
paddingRight number 右内边距
paddingTop number 上内边距
paddingVertical number 上下内边距

1.5 一个子组件代码演示

  • 渲染组件
export default class ReactDemo extends Component {
  render() {
    return (
      <View style={styles.rootView}>
          <View style={styles.innerView}>
              <View style={styles.paddingView}></View>
          </View>
      </View>
    );
  }
}
  • 样式描述
const styles = StyleSheet.create({
    rootView:{
        backgroundColor:'darkorange',
        flex:1
    },
    innerView:{
        backgroundColor:'green',
        // 设置底部边框,一定要设置宽度才行
        borderBottomColor:'yellow',
        borderBottomWidth:2,
        // 设置外间距
        marginTop:50,
        marginLeft:100,
        // 设置内间距
        paddingTop:30,
        paddingLeft:50,
        // 设置宽度
        width:200,
        height:300
    },
    paddingView:{
        backgroundColor:'blue',
        width:50,
        height:50
    }
});
  • 一个子组件运行效果
CSS布局.png

1.6 二个子组件代码演示

  • 渲染组件

  render() {
    return (
      <View style={styles.rootView}>
          <View style={styles.innerView}>
              <View style={styles.paddingView}></View>
          </View>
          <View style={styles.innerView}>
              <View style={styles.paddingView}></View>
          </View>
      </View>
    );
  }
}
  • 样式描述
const styles = StyleSheet.create({
    rootView:{
        backgroundColor:'darkorange',
        flex:1
    },
    innerView:{
        backgroundColor:'green',
        // 设置底部边框
        borderBottomColor:'yellow',
        borderBottomWidth:2,
        // 设置外间距
        marginTop:50,
        marginLeft:100,
        // 设置内间距
        paddingTop:30,
        paddingLeft:50,
        // 设置宽度
        width:200,
        height:300
    },
    paddingView:{
        backgroundColor:'blue',
        width:50,
        height:50
    }
});
  • 两个子组件运行效果
两个子组件.png

相对定位和绝对定位

  • 边缘
left   number  左边缘。
right  number  右边缘。
top    number  顶部边缘。
bottom number  底部边缘。
  • 定位(position):
    • 通过 "left", "top", "right" 以及 "bottom" 边缘属性进行定位。
absolute:绝对定位,参照父控件位置定位
relative:相对定位,参照当前控件原始位置定位
  • 什么时候使用绝对定位,当想把一个已经设置了宽度的控件快速的放在左下角,右下角的时候,可以使用绝对定位。
绝对定位.png
  • 什么时候使用相对定位,当想相对自己做出一些改变的时候,采用相对定位,比如相对自己,往下移动一点
相对定位.png

相关文章

  • ReactNative之CSS布局(二)

    前言 眼看很多公司都开始尝试使用ReactNative,达到跨平台开发,最近也写了很多文章,希望让更多想了解的同学...

  • ReactNative-CSS布局(二)

    1.组件边框 2.组件大小 3.组件外边距 第一个组件参照父控件,其他组件参照上一个组件 marginRight和...

  • ReactNative UI布局之flex

    ReactNative UI布局之flex flexDirection:决定flex的布局方向 justifyCo...

  • 小程序CSS知识点

    一、flex布局Flex 布局教程:语法篇Flex 布局教程:实例篇 二、CSS position 属性总结CSS...

  • CSS基本布局整理

    前言 css布局是前端开发必须掌握的基本内容,前端学习之css基本布局整理。 基本布局 左右布局 div结构: f...

  • ReactNative学习笔记三之布局篇

    在学习ReactNative的过程中,除了学会React的相关语法,还有了解布局样式,ReactNative的布局...

  • 布局

    CSS网格布局引入了二维网格布局系统,可用于布局页面主要的区域布局或小型组件。本文介绍了CSS网格布局 与 CSS...

  • 特殊布局方法

    关于圣杯布局和双飞翼布局:CSS布局之--淘宝双飞翼布局双飞翼布局介绍CSS控制自适应宽度两三栏布局圣杯布局的实现...

  • 【CSS】 二、定义样式表

    CSS 一、使用CSS样式的方式CSS 二、定义样式表CSS 三、常见属性CSS 四、DIV+CSS布局## 二、...

  • ReactNative之Flex布局

    一般使用ReactNative开发App,一般都采用Flex布局,使用这套布局就非常快。Flex简介Flex又叫弹...

网友评论

  • 蒋昉霖:老师,这东西在哪写啊..新手看有点不清不楚啊
  • 遛遛食:RN的样式设置与CSS几完全一样啊

本文标题:ReactNative之CSS布局(二)

本文链接:https://www.haomeiwen.com/subject/xdaiattx.html