• 技术文章 >web前端 >js教程

    react怎么添加css样式

    青灯夜游青灯夜游2021-01-13 17:19:28原创819

    添加方法:1、使用“style={{样式代码}}”在组件内部定义css样式;2、先创建style样式对象,然后在render函数的组件中使用“style={{对象}”语句引用;3、使用“import 'css文件路径'”引入外部css文件。

    本教程操作环境:windows7系统、react16版本,Dell G3电脑。

    相关教程推荐:React视频教程

    相对于html中引用css的三种方法,react中也有三种方法,一一相对:

    1、行内样式:直接在组件内部定义

    行内样式是一种最基本的写法,也就是我们最开始学HTML时写的内联样式那样,在项目中可能会比较少用到

    在JSX中的用法:

    class App extends React.Component {
      // ...
      render() {
        return (
          <div style={{ background: '#eee', width: '200px', height: '200px'}}>
            <p style= {{color:'red', fontSize:'40px'}}>Second Way!</p>
          </div>
        )
      }
    }

    需要注意的是,这里的css样式名采用驼峰命名法:如font-size →fontSize,并且你需要将CSS属性放在双大括号之间。为什么要用两个大括号?因为在JSX中渲染的JS表达式,它们必须被放在一对大括号里,{style}可以视为一个JS对象。所以第一对大括号正是将JS表达式放入JSX解析,里面的那对大括号则创建了一个style对象实例,所以在这里style是作为一个对象传入组件

    2、声明样式:

    声明样式其实是行内样式的一种改进写法,在render函数外部创建style对象,然后传递给组件,让css与标签分离,但实际上样式多了的话还是不太美观

    class App extends React.Component {
     
    //...
     
     const style1={    
          background:'#eee',
          width:'200px',
          height:'200px'
        }
     
      const style2={    
          color:'red',
          fontSize:'40px'
        }
     
      render() {
        return (
          <div style={style1}>
            <p style= {style2}>Second Way!</p>
          </div>
        )
      }
    }

    注意这里实用的还是驼峰命名法,其次因为已经在外部声明了style对象,所以在JSX中使用的时候只需要一个大括号{//..}

    3、引入样式:引入外部的css文件,外部的css文件就是普通的css,在组件js中的import语句后面使用如下语句。

    引入样式就是将CSS文件写下外部,在引入使用,这种普通的引入样式实际上会有一定的问题,我们先看用法,再分析问题

    用法:

    css 文件

    .person{
        width: 60%;
        margin:16px auto;
        border: 1px solid #eee;
        box-shadow: 0 2px 3px #ccc;
        padding:16px;
        text-align: center;
    }

    js文件

    import React from 'react';
    import './Person.css';
    class App extends React.Component {
     
      //....  
     
      render() {
     
        return (
          <div className='person'>
            <p>person:Hello world</p>
          </div> 
        )
      }
    }
     
    export default App;

    结果展示:

    1.png

    问题:

    因为CSS的规则都是全局的,任何一个组件的样式规则,都对整个页面有效,这可能会导致大量的冲突。也就是说如果我有两个css文件,它们的中的一些样式名是一样的,那么就会被覆盖,简单的解决办法就是将样式的命名变得复杂且不重复,但这样样式多了也很难避免重复,且命名也不会太好看。

    更多编程相关知识,请访问:编程教学!!

    以上就是react怎么添加css样式的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:react css样式
    上一篇:JQuery怎么遍历json数组 下一篇:jquery如何判断对象是否获得焦点
    Web大前端开发直播班

    相关文章推荐

    • webstorm不识别react怎么办• react native怎么注释代码• redux必须搭配react吗• 混合开发可以用react吗• react怎么实现锚点滚动

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网