CSS选择非常直接的 child

标签 css

是否可以选择元素First但不是 Second

<p> <code>first</code> </p>
<p> Text <code>second</code> Text </p>

我打算选择 <code>当它是 <p> 的 child 时但在 <p> 中没有内容(空格除外)

我想在没有 JS 的情况下完成它,如果不可能的话,如果它的解释也是一个答案

最佳答案

您可以使用 jQuery 中的过滤器来做到这一点:

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

  var nodetoCheck = $(this).contents()[0];
  if ($(this).contents()[0].nodeValue.trim() === '') {
    nodetoCheck = $(this).contents()[1];
  }

  if (nodetoCheck.nodeType === 1) {
    return true;
  }
}).addClass('selected');

JSfiddle 示例:https://jsfiddle.net/jennifergoncalves/eywk7b53/1/

关于CSS选择非常直接的 child ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44627790/

相关文章:

css - 如何更改 Griddle 中 Next/Prev 按钮的样式

php - 使用 preg_replace_callback 对属性进行排序

html - 您如何设置输入到输入文本字段的文本的样式?

html - 只有屏幕和(最小宽度 : 0px) and (max-width: 327px) not work

css - 背景图像应调整到内部的 div

css - div 标签的高度属性不允许菜单栏的子菜单

javascript - Jquery 数据表在第二页上不起作用

html - 输入高度 :23px makes <p> height:28px :(

html - 为什么我的邮政容器不起作用?

css - 防止将 css "content"应用于特定元素