甚至文本节点也将导致父节点不被认为是空的,因此DIV中的UL将阻止DIV被匹配。
<h1>Original</h1>
<div><ul><li>An item</li></ul></div>
<h1>No Children - Match</h1>
<div></div>
<h1>Has a Child - No Match</h1>
<div><ul></ul></div>
<h1>Has Text - No Match</h1>
<div>text</div>
DIV {
background-color: red;
height: 20px;
}
DIV:empty {
background-color: green;
}
如果您执行脚本路线:
// pure JS solution
?var divs = document.getElementsByTagName("div");
for( var i = 0; i < divs.length; i++ ){
if( divs[i].childNodes.length == 0 ){ // or whatever condition makes sense
divs[i].style.display = "none";
}
}?
当然,jQuery使这样的任务变得更容易,但是这一任务不足以包含整个库。