根据路由更改react-router中的全局CSS?

时间:2019-01-03 02:38:30

标签: css reactjs less

有一个我想覆盖的全局css类(.ant-content),但是我想按路线进行操作,我尝试导入css文件,该文件覆盖了每个React-Component覆盖.ant-content的内容。各种路径,但是它们即使不渲染也只会最终加载其css(可能是因为无论是否加载了组件,都会进行导入)。

1 个答案:

答案 0 :(得分:1)

假设您要重写的地方有这样的类:

.ant-content{ color: red }

您可以尝试使用CSS的特异性排序规则来覆盖此规则。因此,例如,如果在您的一条路线中,您有一个要覆盖的组件看起来像这样

<div className='override'>
  <Component className='ant-content/>
</div> 

然后在您导入该组件的CSS中可以使用:

.override .ant-content{
  color: blue
}

这应该覆盖原始的.ant-content类,因为它比原始的类声明更具“特定性”。 您可以在此处阅读有关特异性的更多信息:https://www.w3schools.com/css/css_specificity.asp