没有办法可以取消css继承。
当你在大的元素如body中写了一些css样式后,该继承的都会被其子元素继承。
你只能用优先级别更高的css样式来覆盖已定义的css。
或者写js脚本来改变元素的css,也是一种方案。
最后有一个变通办法,只在后台等少数情况下用,用iframe,里面是一个单独的页面,
与父窗体基本无关。
Css清除继承样式可以使用如下代码:
写法:*{}
星号即为通配符选择器,写在其中的样式会应用页面到所有的元素中,所以使用的频率并不高,主要用于清除浏览器默认样式。
在使用各种元素的过程中,我们会发现很多元素都是有默认样式的,比如<body>标签有默认的padding值和margin值,<h1>和<p>标签有默认的行高字号,margin值,a标签有默认的下划线,列表前面有小圆点等等,常常会干扰我们进行页面的编写,所以我们可以事先使用通配符选择器进行浏览器默认样式清除。
更精准的清除方法
刚刚我们使用的通配符选择器,会给所有元素都设置一遍默认样式,解析的工作量会比较大,所以我们可以根据我的页面里到底有哪些元素需要清除,使用群组选择器写出更精确的清除默认样式css,如:
可以把它写入一个外部样式表reset.css,如果需要清除直接导入就可以啦。
1、清除在编写页面中由于浏览器默认样式带来的干扰。
2、兼容性更好,不同浏览器的默认样式可能会有所不同,如果不清楚可能会造成我们编写的页面在不同浏览器上的效果有所出入。
选择器部分文章:
选择器介绍(一)标签选择器、id选择器、类选择器
https://www.jianshu.com/p/d2f54bc64302
选择器介绍(二)后代选择器,子代选择器,交集选择器,并集(群组)选择器
https://www.jianshu.com/p/98f6788d0f54
通配符选择器&清除浏览器默认样式
https://www.jianshu.com/p/4eb179b4fdfc