【发布时间】:2018-11-27 23:08:51
【问题描述】:
我有一个 css 文件 (main.css),我想使用另一个 css 文件 (overrides.css) 覆盖它。但是我这样做有问题,因为它们位于不同的文件中并且它们得到不同的哈希值。
这是我的 CSS:
/* main.css */
.mainContainer {
padding: 16px;
margin: 16px;
background-color: palevioletred;
border-radius: 5px;
}
.mainContainer h1{
color: white;
}
/* overrides.css */
.mainContainer h1{
color: blue;
}
来自here,我使用Object.assign() 来合并css 文件,但没有帮助。这是我的组件:
import React from 'react';
import Main from './main.css';
import Overrides from './overrides.css';
const Style = Object.assign({}, Overrides, Main);
class Sample extends React.Component{
render(){
return (
<div className={Style.mainContainer}>
<h1>Hello</h1>
<p>Hello CSS modules!</p>
</div>
);
}
}
export default Sample;
我希望我的h1 变成蓝色,但它不会。这是我编译的css:
/* main.css */
._1pXpG {
padding: 16px;
margin: 16px;
background-color: palevioletred;
border-radius: 5px;
}
._1pXpG h1{
color: white;
}
/* overrides.css */
.Wmy0p h1{
color: blue;
}
我希望 .Wmy0p h1 是 ._1pXpG h1 所以它可以覆盖。但它不会。请注意,如果您只是将 overrides.css 的内容粘贴到主 css 的底部,它将起作用,但我需要将我的覆盖 css 文件放在单独的文件中。
提前致谢
【问题讨论】:
标签: css reactjs css-modules react-css-modules