设置DIV显示:如果它包含不包含任何LI项的UL列表,则为none

时间:2014-07-18 05:51:45

标签: wordpress list hide element wrapper

我正在设计一个WordPress主题并遇到这个问题:侧边栏有一些DIV容器,它们都有一个UL列表。但是这些UL列表中没有一个没有LI项目。现在我想要隐藏具有此UL列表而没有LI项目的DIV容器。

我正在尝试这个,但它没有奏效:

.wrapper > aside > div > div:not(h3 ul li) {display:none;}<br />

示例代码:

<div class="wrapper">
  <aside class="sidebar" role="complementary">
    <div class="sidebar-widget">
      <div id="recent-comments-2" class="widget_recent_comments">
        <h3>Recent Comments</h3>
        <ul id="recentcomments"></ul>
      </div>
    </div>
  </aside>
</div>

1 个答案:

答案 0 :(得分:0)

你可以通过PHP代码实现,或者如果你想要一个更简单的方法,那么使用jQuery。它会检查UL是否li作为其子函数.hasChildren()。因此,它会将其变为display:block,否则为display:none