1,antd.css文件中的class名称都以antd为前缀,理论上不会影响我们的代码,那么我们打开antd.css文件看一下,为什么样式变化了:
可以看到,antd.css文件中虽然大部分样式是以antd为前缀的,但是它会设置一些标签的默认样式,比如它给p标签设置margin-bottom是1em,但是我们平时项目中p元素默认margin=0,所以此时引入antd.css文件就会引起样式错乱
2,怎么办呢
这里是有两个情况的,一个是如果你项目中用到antd较少的组件,比如只用了Table组件,那么可以只引入Table组件的样式,直接引入。antd/es/table/style/index.css 即可;
另一个是项目中用到大量antd组件,那么这个时候一个个引入就很蠢,建议这个时候看看antd.css的代码,一共也没多少行标签样式。
看完,这个时候打开控制台,检查一下样式出错的原因,比如是由于antd设置了p的margin-bottom=1em导致元素距离变宽了,可以在引入全局antd.css样式的下面引入自己的全局样式,覆盖掉antd.css样式:
import 'antd/dist/antd.css'
import. './mycss.css'
//mycss.css
p{
margin-bottom:0
}
这就是人家要求antd样式文件要放到最前面引入的原因。