css样式优先级

样式优先级
important > 行内样式 > id选择器 > 伪类选择器定义 > 属性选择器 , class类选择器 (谁在下面谁起作用) > 标签选择器 > 通配符*
1、无条件优先的属性只需要在属性后面使用 !important 。它会覆盖页面内任何位置定义的元素样式。IE 6不支持这个属性;
2、第二高位的优先属性是在html中给元素标签加style。由于该方法会造成CSS的难以管理,所以不推荐使用。
3、第三级优先的属性是由一个或多个id选择器来定义的。
4、第四级的属性由一个或多个 类选择器、属性选择器、伪类选择器定义。如 .classname{margin:3px;} 会覆盖 div{margin:6px;}
5、第五级由一个或多个 类型选择器定义。如 div{margin:6px;} 覆盖 *{margin:10px;} 。
最低一级的选择器是为一个通配选择器,用*{margin:10px;}这样的类型来定义。

相同级别的优先级

当比较多个相同级别的css选择器优先级时,它们定义的位置将决定一切。下面从位置上将CSS优先级由高到低分为六级:

1、位于<head/>标签里的<style/>中所定义的CSS拥有最高级的优先权。
2、第二级的优先属性由位于 <style/>标签中的 @import 引入样式表所定义。
3、第三级的优先属性由<link/>标签所引入的样式表定义。
4、第四级的优先属性由<link/>标签所引入的样式表内的 @import 导入样式表定义。
5、第五级优先的样式由用户设定。
6、最低级的优先权由浏览器默认。
原文地址:https://www.cnblogs.com/xiaoxiao2017/p/7878100.html