HTML 标签优先级(渲染和样式应用)
在HTML中,标签本身没有严格的"优先级"概念,但不同情况下有不同的优先规则:
1. 文档流中的渲染优先级
- 浏览器按照DOM顺序从上到下渲染
- 某些元素会创建新的堆叠上下文,影响显示层级
2. 样式应用优先级(CSS特异性)
虽然这不是标签本身的优先级,但影响元素最终表现:
行内样式 (1000) > ID选择器 (100) > 类/属性/伪类 (10) > 元素/伪元素 (1)
3. 表单元素中的优先级
- 相同name的单选按钮组中,后出现的会覆盖先前的选择
- 表单中设置了
autofocus
属性的元素会优先获得焦点
4. 脚本加载优先级
- 带有
defer
或async
属性的<script>
标签加载行为不同 - 普通
<script>
会阻塞渲染,defer
的按顺序执行,async
的异步执行
5. 元数据优先级
<title>
标签在浏览器标签页中显示优先级最高<meta>
标签中的viewport、charset等设置会影响页面初始渲染
6. 媒体加载优先级
- 使用
preload
属性可以提示浏览器优先加载某些资源 <img>
的loading="eager"
会优先加载