iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >react中引入css的方式是什么
  • 632
分享到

react中引入css的方式是什么

2023-06-30 10:06:22 632人浏览 八月长安
摘要

这篇“React中引入CSS的方式是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“react中引入css的方式是什么”文

这篇“React中引入CSS的方式是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“react中引入css的方式是什么”文章吧。

    前言

    组件式开发选择合适的css解决方案尤为重要

    通常会遵循以下规则:

    • 可以编写局部css,不会随意污染其他组件内的原生;

    • 可以编写动态的css,可以获取当前组件的一些状态,根据状态的变化生成不同的css样式;

    • 支持所有的css特性:伪类、动画、媒体查询等;

    • 编写起来简洁方便、最好符合一贯的css风格特点

    在这一方面,Vue使用css起来更为简洁:

    • 通过 style 标签编写样式

    • scoped 属性决定编写的样式是否局部有效

    • lang 属性设置预处理器

    • 内联样式风格的方式来根据最新状态设置和改变css

    而在react中,引入CSS就不如Vue方便简洁,其引入css的方式有很多种,各有利弊

    方式

    常见的CSS引入方式有以下:

    • 在组件内直接使用

    • 组件中引入 .css 文件

    • 组件中引入 .module.css 文件

    • CSS in js

    在组件内

    直接在组件中书写css样式,通过style属性直接引入,如下:

    import React, { Component } from "react";const div1 = {  width: "300px",  margin: "30px auto",  backgroundColor: "#44014C",  //驼峰法  minHeight: "200px",  boxSizing: "border-box"};class Test extends Component {  constructor(props, context) {    super(props);  }   render() {    return (     <div>       <div style={div1}>123</div>       <div style={{backgroundColor:"red"}}>     </div>    );  }}export default Test;

    上面可以看到,css属性需要转换成驼峰写法 这种方式优点:

    • 内联样式, 样式之间不会有冲突

    • 可以动态获取当前state中的状态

    缺点:

    • 写法上都需要使用驼峰标识

    • 某些样式没有提示

    • 大量的样式, 代码混乱

    • 某些样式无法编写(比如伪类/伪元素)

    组件中引入css文件

    css单独写在一个css文件中,然后在组件中直接引入

    App.css文件:

    .title {  color: red;  font-size: 20px;}.desc {  color: green;  text-decoration: underline;}

    组件中引入:

    import React, { PureComponent } from 'react';import Home from './Home';import './App.css';export default class App extends PureComponent {  render() {    return (      <div className="app">        <h3 className="title">我是App的标题</h3>        <p className="desc">我是App中的一段文字描述</p >        <Home/>      </div>    )  }}

    这种方式存在不好的地方在于样式是全局生效,样式之间会互相影响

    组件中引入 .module.css 文件

    css文件作为一个模块引入,这个模块中的所有css,只作用于当前组件。不会影响当前组件的后代组件

    这种方式是webpack特工的方案,只需要配置WEBpack配置文件中modules:true即可

    import React, { PureComponent } from 'react';import Home from './Home';import './App.module.css';export default class App extends PureComponent {  render() {    return (      <div className="app">        <h3 className="title">我是App的标题</h3>        <p className="desc">我是App中的一段文字描述</p >        <Home/>      </div>    )  }}

    这种方式能够解决局部作用域问题,但也有一定的缺陷:

    • 引用的类名,不能使用连接符(.xxx-xx),在 javascript 中是不识别的

    • 所有的 className 都必须使用 {style.className} 的形式来编写

    • 不方便动态来修改某些样式,依然需要使用内联样式的方式;

    CSS in JS

    CSS-in-JS, 是指一种模式,其中CSS由 JavaScript生成而不是在外部文件中定义

    此功能并不是 React 的一部分,而是由第三方库提供,例如:

    • styled-components

    • emotion

    • glamorous

    下面主要看看styled-components的基本使用

    本质是通过函数的调用,最终创建出一个组件:

    • 这个组件会被自动添加上一个不重复的class

    • styled-components会给该class添加相关的样式

    基本使用如下:

    创建一个style.js文件用于存放样式组件:

    export const Selflink = styled.div`  height: 50px;  border: 1px solid red;  color: yellow;`;export const SelfButton = styled.div`  height: 150px;  width: 150px;  color: ${props => props.color};  background-image: url(${props => props.src});  background-size: 150px 150px;`;

    引入样式组件也很简单:

    import React, { Component } from "react";import { SelfLink, SelfButton } from "./style";class Test extends Component {  constructor(props, context) {    super(props);  }     render() {    return (     &lt;div&gt;       &lt;SelfLink title="People's Republic of China"&gt;app.js&lt;/SelfLink&gt;       &lt;SelfButton color="palevioletred" style={{ color: "pink" }} src={fist}&gt;          SelfButton        &lt;/SelfButton&gt;     &lt;/div&gt;    );  }}export default Test;

    区别

    通过上面四种样式的引入,可以看到:

    • 在组件内直接使用css该方式编写方便,容易能够根据状态修改样式属性,但是大量的演示编写容易导致代码混乱

    • 组件中引入 .css 文件符合我们日常的编写习惯,但是作用域是全局的,样式之间会层叠

    • 引入.module.css 文件能够解决局部作用域问题,但是不方便动态修改样式,需要使用内联的方式进行样式的编写

    • 通过css in js 这种方法,可以满足大部分场景的应用,可以类似于预处理器一样样式嵌套、定义、修改状态等

    以上就是关于“react中引入css的方式是什么”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网精选频道。

    --结束END--

    本文标题: react中引入css的方式是什么

    本文链接: https://www.lsjlt.com/news/328248.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • react中引入css的方式是什么
      这篇“react中引入css的方式是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“react中引入css的方式是什么”文...
      99+
      2023-06-30
    • React中的CSS局部引入过程是什么
      这篇文章主要介绍了React中的CSS局部引入过程是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇React中的CSS局部引入过程是什么文章都会有所收获,下面我们一起来看看吧。React中CSS局部引入配置...
      99+
      2023-07-05
    • css引入的3种方式是什么
      小编给大家分享一下css引入的3种方式是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 1、内部引用,在html文档中在&...
      99+
      2024-04-02
    • css的三种引入方式是什么
      这篇文章主要介绍“css的三种引入方式是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“css的三种引入方式是什么”文章能帮助大家解决问题。css的引入方式有三种...
      99+
      2024-04-02
    • CSS引入式样式的语法是什么
      这篇文章主要介绍“CSS引入式样式的语法是什么”,在日常操作中,相信很多人在CSS引入式样式的语法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS引入式样式的语法是...
      99+
      2024-04-02
    • react怎么引入css
      本篇内容介绍了“react怎么引入css”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
      99+
      2024-04-02
    • 引入Css样式中link和rel指的是什么
      本篇内容介绍了“引入Css样式中link和rel指的是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
      99+
      2024-04-02
    • css选择器和三种引入方式是什么
      本篇内容主要讲解“css选择器和三种引入方式是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“css选择器和三种引入方式是什么”吧! css基础 一.什么...
      99+
      2024-04-02
    • CSS引入方式以及link和@import的区别是什么
      小编给大家分享一下CSS引入方式以及link和@import的区别是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 引入方...
      99+
      2024-04-02
    • 说说react中引入css的方式有哪些并区别在哪
      目录前言方式在组件内组件中引入css文件组件中引入 .module.css 文件CSS in JS区别前言 组件式开发选择合适的css解决方案尤为重要 通常会遵循以下规则: 可以编写...
      99+
      2024-04-02
    • 如何引入CSS的方式
      小编给大家分享一下如何引入CSS的方式,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!(1)内嵌式通过<style>&...
      99+
      2024-04-02
    • react 项目中引入图片的几种方式
      img标签引入图片 因为react其实是通过js的reader函数渲染的页面,所以直接写src=“路径”是无法引入图片 我们可以像引入模块一样引入图片 import img ...
      99+
      2024-04-02
    • HTML中引入CSS的方式有哪些
      这篇文章给大家分享的是有关HTML中引入CSS的方式有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。   一、认识CSS   CSS:层叠样式表(Cascading St...
      99+
      2024-04-02
    • react引入虚拟dom的原因是什么
      这篇“react引入虚拟dom的原因是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“r...
      99+
      2024-04-02
    • 引入CSS的方式有哪些
      这篇文章主要讲解了“引入CSS的方式有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“引入CSS的方式有哪些”吧!看到淘宝网页中这样写使用的是import,而很多网站都是使用link,当然...
      99+
      2023-06-08
    • 有哪些引入CSS的方式
      本篇文章给大家分享的是有关有哪些引入CSS的方式,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。css的全称是什么css的全称是Cascading Style Sheets(层叠...
      99+
      2023-06-08
    • css的引入方式有哪些
      这篇文章将为大家详细讲解有关css的引入方式有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。css的三种引入方式1.行内样式,最直接最简单的一种,直接对HTML标签使用style="&quo...
      99+
      2023-06-14
    • css的引入方式实例分析
      本篇内容主要讲解“css的引入方式实例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“css的引入方式实例分析”吧! css的三种...
      99+
      2024-04-02
    • css的引入方式有哪4种
      这篇文章主要介绍css的引入方式有哪4种,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!四种引入方式:1、直接在html标签使用style属性引入;2、将css样式规则写在style标签中;3、使用link标签引入外部...
      99+
      2023-06-15
    • js中引入css的方法
      这篇文章主要介绍了js中引入css的方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。js中引入css的方法:1、使用“document.write”方式输出引入css的li...
      99+
      2023-06-14
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作