如何在空时隐藏/删除DIV

时间:2009-09-21 15:28:39

标签: jquery css

我有一些服务器端HTML输出,我无法处理使用纯CSS,基本上DIV有时会持有:

<div><span>Content</span></div>

<div><p>Content</p></div>

<div>Content</div>

<div> </div>

当DIV == <div> </div>时,我想删除它。

有什么想法吗?

5 个答案:

答案 0 :(得分:41)

您只能使用CSS执行此操作:

div:empty { display: none }

答案 1 :(得分:21)

更好(假设jQuery):

$(document).ready(function() { $('div:empty').remove(); });

编辑:其他答案都很好,但OP想要删除空白项目,而不是隐藏它。

答案 2 :(得分:10)

我认为你可以做到以下几点:

$(function() {
  $("div:empty").hide();
});

jQuery的empty伪选择器很棒。

答案 3 :(得分:6)

这是另一种简单的方法...... 使用filter()......

$('div').filter(function() {

  return $.trim($(this).text()) === ''

}).remove()

答案 4 :(得分:3)

您还可以使用仅限CSS来解决此问题,在内容周围放置一个style="empty-cells:hide"的表格,并将div更改为td,如下所示:

之前:

<div>Content</div>

之后:

<table style="empty-cells:hide"><tr><td>Content</td></tr></table>