angular2+ 组件中用@import进来的css不起作用
–>
一般来说是作用域的问题,首先你应该先看标签内是否有angular2内置生成的自定义属性比如:
在我们的@Component中,这三个是基本的设置。
页面上的标签会生成带有 _nghost-c1 和 _ngcontent-c1 如下图:
对应在memumanager组件上的样式和@import进来的样式都会带上 [_ngcontent-c1] 这个作用域,如下图:
因而,如果你用Js新创建的DOM并插入到节点的时候,可能你新创建的DOM并没有带这个作用域,对应你写得样式就会不起作用;
或者这个组件的样式是common的css,当被其他组件引入的时候,因为作用域的原因,也会导致样式的失效。
而当我们设置了 encapsulation: ViewEncapsulation.None
页面就会把 _nghost-c1 和 _ngcontent-c1 这两个作用域去掉,对应Component打包出来的css也没有这个作用域。
原文链接:https://www.cnblogs.com/huayuanp/p/8311351.html
本文来源 互联网收集,文章内容系作者个人观点,不代表 本站 对观点赞同或支持。如需转载,请注明文章来源,如您发现有涉嫌抄袭侵权的内容,请联系本站核实处理。
© 版权声明
文章版权归作者所有,未经允许请勿转载。