使用 :empty 伪类可选中无任何内容(包括文本、空格、子元素和注释)的元素,如 div:empty 会匹配完全为空的 div,适用于隐藏空容器或标记未填字段等场景。

要通过 CSS 选择器选中空元素,可以使用 :empty 伪类选择器。这个选择器能匹配那些内部没有任何内容的元素,包括文本、空格、换行和子元素。
使用 :empty 选择器
:empty 是专门用来选中没有子节点的元素的 CSS 伪类。只要元素内完全为空,就能被选中。
- 元素不能包含任何文本内容(包括空格)
- 不能有子元素
- 注释节点也算“内容”,会使元素不再为空
示例:
div:empty {
background-color: yellow;
height: 20px;
border: 1px dashed red;
}
上面样式会为所有空的 div 添加背景和边框。
立即学习“前端免费学习笔记(深入)”;
实际匹配情况举例
以下这些 div 会被 :empty 选中:
而这些不会被选中:
实用场景
这个选择器常用于表单或列表中清理空项的显示:
- 隐藏空的提示容器:
.tip:empty { display: none; } - 标记未填写的必填字段容器
- 在 CMS 输出中处理空模块区域
基本上就这些。:empty 是一个简单但很实用的选择器,特别适合处理动态内容中可能出现的空元素问题。注意空白字符的影响即可。










