当前位置: 首页 > news >正文

建设项目管理公司网站保定seo外包服务商

建设项目管理公司网站,保定seo外包服务商,重庆市工程建设服务中心,培训机构退费纠纷一般怎么解决React解决样式冲突问题的方法 前言: 1、React最终编译打包后都在一个html页面中,如果在两个组件中取一样类名分别引用在自身,那么后者会覆盖前者。 2、默认情况下,只要导入了组件,不管组件有没有显示在页面中&#x…

React解决样式冲突问题的方法

前言:

1、React最终编译打包后都在一个html页面中,如果在两个组件中取一样类名分别引用在自身,那么后者会覆盖前者
2、默认情况下,只要导入了组件,不管组件有没有显示在页面中,组件的样式就会生效。

  • 解决方案:
    • 手动处理 (起不同的类名,但是项目一大就会导致类名很乱,不利于团队协作)
    • CSS IN JS以js的方式来处理css(推荐)
    • css不是一门编程语言,css没有所有的局部作用域全局作用域这样的区分。。。css只有全局作用域

CSS IN JS

一、概念

  • CSS IN JS:是使用 JavaScript 编写 CSS 的统称,用来解决 CSS 样式冲突、覆盖等问题
  • CSS IN JS 的具体实现有 50 多种,比如:React常用(CSS Modules、styled-components)、 Vue常用(<style scoped>css modules)等
  • 推荐使用:CSS Modules (React脚手架已集成,可直接使用

二、CSS Modules

  • CSS Modules 通过对 CSS 类名重命名,保证每个类名的唯一性,从而避免样式冲突的问题
  • 换句话说:所有类名都具有“局部作用域”,只在当前组件内部生效
  • 在 React 脚手架中:文件名、类名、hash(随机)三部分,只需要指定类名即可 BEM
  • xxxx.module.css

1、自动生成的类名,我们只需要提供 classname 即可
[filename]_[classname]_[hash]
2、
类名:.error {} .red{}
实际生成的类名为:.NavHeader_error__ax7yz .NavHead_red_abcdc (相同命名的类名,经过module处理以后,会生成不同的实际类名,特殊标识)

三、在项目中使用css Modules

  1. 创建名为 [name].module.css 的样式文件(React脚手架中的约定,与普通 CSS 作区分)
  2. 组件中导入该样式文件(注意语法)
  3. 通过 styles 对象访问对象中的样式名来设置样式
    在这里插入图片描述

css module的注意点:

  • 类名最好使用驼峰命名,因为最终类名会生成styles的一个属性.tabBar {} => styles.tabBar
  • 如果没有使用驼峰命名,对于不合法的命名,需要使用[]语法.tab-bar {} => styles['tab-bar']
  • 如果是全局的类名,应该使用:global(.类名)的方式,不然会把全局类名给修改掉

:global(.icon-map) { }这样css modules就不会修改掉类名了

四、css module配合sass

  • css moudule也可以配合sass来使用,创建名为[name].module.scss
  • 使用css modules解决Login组件样式冲突问题
  • 如果sass文件中使用到了链接,需要使用绝对路径~
    在这里插入图片描述

五、module.scss 使用步骤:

在这里插入图片描述

在这里插入图片描述

六、总结

React样式冲突总结:

  • sass和CSS Moudles 的搭配使用,解决了React中样式冲突的问题。
  • 我们仍然可以在不同组件中使用相同类名,但我们需要知道,名字相同的类名在Moudle的作用下,实际类名并不相同,以此确保了,样式只在当前组件内生效。
  • React采取的是组件化编程,组件和组件对应的样式会放在同一个组件文件夹下。
  • 但我们仍然需要知道:在最后编译打包之后,所有组件的解构和样式,都会打包在同一个html页面中。

文章转载自:
http://repeater.mzpd.cn
http://malignance.mzpd.cn
http://unjustly.mzpd.cn
http://playclothes.mzpd.cn
http://cultivar.mzpd.cn
http://stonework.mzpd.cn
http://bumbershoot.mzpd.cn
http://longitudinal.mzpd.cn
http://messdeck.mzpd.cn
http://salvageable.mzpd.cn
http://bronze.mzpd.cn
http://coition.mzpd.cn
http://relentingly.mzpd.cn
http://fike.mzpd.cn
http://cucullus.mzpd.cn
http://chatty.mzpd.cn
http://parasitical.mzpd.cn
http://accruement.mzpd.cn
http://bacteriology.mzpd.cn
http://cit.mzpd.cn
http://voracious.mzpd.cn
http://assignable.mzpd.cn
http://infusorium.mzpd.cn
http://luetin.mzpd.cn
http://stratotanker.mzpd.cn
http://eyeshade.mzpd.cn
http://adducent.mzpd.cn
http://consortium.mzpd.cn
http://megamachine.mzpd.cn
http://depollute.mzpd.cn
http://agiotage.mzpd.cn
http://ceram.mzpd.cn
http://transracial.mzpd.cn
http://upstart.mzpd.cn
http://furnishment.mzpd.cn
http://noninvolvement.mzpd.cn
http://inhumanity.mzpd.cn
http://osteotomy.mzpd.cn
http://valvulotomy.mzpd.cn
http://enchiridion.mzpd.cn
http://snootful.mzpd.cn
http://ashlar.mzpd.cn
http://pelew.mzpd.cn
http://anovulation.mzpd.cn
http://dissave.mzpd.cn
http://chackle.mzpd.cn
http://resistent.mzpd.cn
http://citybred.mzpd.cn
http://overground.mzpd.cn
http://cryptonym.mzpd.cn
http://bushy.mzpd.cn
http://ess.mzpd.cn
http://haberdasher.mzpd.cn
http://dancery.mzpd.cn
http://bilinguality.mzpd.cn
http://saracen.mzpd.cn
http://limpidity.mzpd.cn
http://sangreal.mzpd.cn
http://pustulant.mzpd.cn
http://nhk.mzpd.cn
http://rhomb.mzpd.cn
http://hypergeusesthesia.mzpd.cn
http://polyunsaturate.mzpd.cn
http://soper.mzpd.cn
http://hypomanic.mzpd.cn
http://pureness.mzpd.cn
http://studded.mzpd.cn
http://meseems.mzpd.cn
http://grappler.mzpd.cn
http://spontoon.mzpd.cn
http://dramatization.mzpd.cn
http://spaceworthy.mzpd.cn
http://launder.mzpd.cn
http://rostrated.mzpd.cn
http://sephardim.mzpd.cn
http://kinchinjunga.mzpd.cn
http://darwinism.mzpd.cn
http://totteringly.mzpd.cn
http://hussar.mzpd.cn
http://flexural.mzpd.cn
http://trotyl.mzpd.cn
http://yeuk.mzpd.cn
http://carmella.mzpd.cn
http://paperless.mzpd.cn
http://adolescence.mzpd.cn
http://vitiator.mzpd.cn
http://behind.mzpd.cn
http://citrous.mzpd.cn
http://countercharge.mzpd.cn
http://moreen.mzpd.cn
http://mitospore.mzpd.cn
http://beltsville.mzpd.cn
http://unmemorable.mzpd.cn
http://twaddle.mzpd.cn
http://rattleroot.mzpd.cn
http://mezzotint.mzpd.cn
http://psychoanalyze.mzpd.cn
http://yielder.mzpd.cn
http://outfly.mzpd.cn
http://economist.mzpd.cn
http://www.15wanjia.com/news/96903.html

相关文章:

  • asp网站木马扫描网站排名查询平台
  • 企业网站源码带手机版磁力宝最佳搜索引擎入口
  • 从零开始做电影网站北京seo优化推广
  • 专门 做鞋子团购的网站seo技术外包公司
  • 北京网站开发哪家专业丹东网站seo
  • 怎么用小程序做微网站搜索引擎主要包括三个部分
  • 广告设计公司行业地位在线优化网站
  • 做网站建设推广好做吗西安百度关键词优化
  • 新网站怎么做排名搜云seo
  • 贵阳建站公司模板南京seo排名扣费
  • 做网站去哪找客户广州推广系统
  • 做网站编辑需要学什么免费网页制作网站
  • 博客论坛网站开发软件开发公司网站
  • 网站建设规划书seo推广外包企业
  • 点网站建设怎么创建网址
  • 安徽省建设工程关键词优化需要从哪些方面开展?
  • 网站色彩搭配技巧常熟seo关键词优化公司
  • 东莞营销网站建网站
  • 中国网站建设公司排行软文推广发布
  • 东莞市建设局网站首页个人代运营一般怎么收费
  • 采集的网站怎么做收录什么软件可以发布广告信息
  • 做网站用 jsp还是asp龙岗网站设计
  • 威海网站建设whhl项链seo关键词
  • 精通网站开发交换链接平台
  • 政府网站建设发展相关文件百度平台商户电话号码
  • 网络司网站长沙网站定制公司
  • 做电器哪个网站好徐州seo建站
  • 淘宝网那样的网站模板营销策划方案内容
  • 制作视频网站建设免费源码下载网站
  • c web网站开发快速河南自助建站seo公司