react中样式冲突怎么解决
推荐:《javascript基础教程》
解决react中样式冲突
TestAComponent 组件A:
有两个组件,一个叫做TestAComponent,另外一个叫做TestBComponent,在TestA组件中我写了一个背景色为蓝色的按钮,TestB中我写了一个背景色为红色的按钮。
class TestAComponent extends React.Component { render() { return ( <div> <button className="box">背景为蓝色</button> </div> ); } }TestA css,背景设置的为蓝色:
.box{ font-size: 20px; margin: 10px; padding: 20px; background-color: blue; border-radius: 10px; }TestB 组件B:
明明两个按钮设置了不同的背景色,为什么实际显示会这样呢?这是我们分析一下样式的设置,在标签中我们设置的class名为box,这是很多前端新人常用的命名方法,但是将不同组件的标签的class类名设置为相同的名字会造成样式冲突。
解决此问题方法:
本教程操作环境:windows7系统、react17.0.1版本,该方法适用于所有品牌电脑。
将类名前加上模块名,如这个组件叫做LoveVideo,则整个组件的样式表CSS类名前加上组件名LoveVideo:
除了这样命名相同造成的冲突外,还有一种情况就是设置了一些全局的样式,比如:
react在开发中很多有很多需要注意的地方,换句话说就是有很多小坑需要踩一踩,这里分享一下我遇到的一个小坑,就是样式冲突,这是一个值得注意的问题,首先看一下例子:
class TestBComponent extends React.Component { render() { return ( <div> <button className="box">背景为红色</button> </div> ); } }TestB css,背景设置的为红色:

代码写好之后npm start一下,这是会发现浏览器里显示的效果是这样的:
html{ background-color: #fff; font-size: 14px; } *{ margin: 0; padding: 0; background-color: #fff; font-size: 14px; }这样的全局通用的样式也切记不可设置的,因为使用react做一个单页应用只有一个页面,如果设置了全局样式则整个页面都会加载出此样式。
解决react中样式冲突的方法:首先打开相应的代码文件;然后将类名前加上模块名,如将整个组件的样式表CSS类名前加上组件名LoveVideo即可。
<div> <button className="LoveVideobox">TestA 背景为蓝色</button> </div> .LoveVideobox{ font-size: 20px; margin: 10px; padding: 20px; background-color: blue; border-radius: 10px; }修改好之后刷新一下页面,你就会发现样式冲突的问题就会很好的解决:

2、不要设置html{}、*{}之类的全局通用样式
以上就是react中样式冲突怎么解决的详细内容,更多请关注聚合云库其它相关文章!
1、单个组件类名加上组件名前缀,如组件名为LoveVideo,则所有的样式名前加上此前缀
总结

相关热词: 解决
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://www.juheyunku.com/jiaob/javascript/4621.shtml
相关文章
热门TAG
服务器 命令 技巧 详解 调用 标签 功能 织梦 javascript dedecms修改内容 织梦教程 php 白帽 企业网站 外链 权重 MYSQL 网站流量 实例解析 JSP 网站收录 搜索引擎 蜘蛛 windows jquery jquery教程 python tags标签 HTML 织梦cms最新文章
-
Javascript是什么?
时间:2021-01-04
-
Canvas入门实战之实现一个
时间:2021-01-04
-
11月份GitHub上最热门的Ja
时间:2021-01-04
-
一篇带给你JavaScript的Cla
时间:2021-01-04
-
详解js异步文件加载器
时间:2021-01-04
-
深入理解JavaScript中的箭头
时间:2021-01-04
-
复盘Node项目中遇到的13+常
时间:2021-01-04
-
连续3年稳居第一,全球
时间:2021-01-04
热门文章
-
连续3年稳居第一,全球1240万用户,Java
时间:2021-01-04
-
一篇带给你JavaScript的Class语法介绍
时间:2021-01-04
-
深入理解JavaScript中的箭头函数
时间:2021-01-04
-
Javascript在Chrome浏览器中调试的七个步骤
时间:2021-01-04
-
Canvas入门实战之实现一个图形验证码
时间:2021-01-04
-
详解js异步文件加载器
时间:2021-01-04
-
复盘Node项目中遇到的13+常见问题和解决方
时间:2021-01-04
-
11月份GitHub上最热门的JavaScript开源项目
时间:2021-01-04
-
Javascript是什么?
时间:2021-01-04
