html - 不能使用 first-child css 来设置显示

标签 html css

我正在使用 wordpress 及其生成的代码:

<aside class="left-hand-column">
 <div class="textwidget">
  <p></p> ...1
   <div class="pdf-download">
    <p> ... 2
     <a href="http://www.kusuma.ee-web.co.uk/wp-content/uploads/2016/04/strategy2015-2018.pdf" target="_blank">download pdf</a>
    </p>
   </div>
  <p></p> ...3
 </div>
</aside>

我想删除 <p></p> 的影响标签对。

我想我可以像这样为他们设置 display:none:

.textwidget p:first-child {
    display:none;
}

但是它使 1 和 2 p 消失并留下 3 - 请问我怎样才能让它做我需要的事情?

最佳答案

您可以删除 .textwidget 的直接后代 p:

.textwidget > p {
    display:none;
}

您可以改为删除 :empty 段落标签:

.textwidget p:empty {
    display:none;
}

关于html - 不能使用 first-child css 来设置显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36728256/

相关文章:

html - 使 div 宽度拉伸(stretch)以适合其内容

jquery - 当所有具有所需类的字段都已填充时,如何动态地将类切换到 div?

html - 表格延伸过去的容器

iPhone 特定的 CSS

html - 限制 twitter bootstrap 中进度条的宽度

html - 链接到外部样式表时不会加载页面

javascript - 动态创建输入

html - 关于 :after pseudo class 的 Css 动画不透明度

html - CSS-文本向上移动

javascript - 我如何使用 jQuery 在表单中显示更多选项?