【问题标题】:Selecting "grandchild"选择“孙子”
【发布时间】:2014-10-08 09:52:02
【问题描述】:

我有一个具有挑战性的问题!

让我们看看三种可能的情况

场景 1

<div class="entry-content">
   <p><a href="#"><img src="#"></a></p>
</div>

场景 2

<div class="entry-content">
   <p>&nbsp;</p>
   <p><a href="#"><img src="#"></a></p>
</div>

场景 3

<div class="entry-content">
   <p>&nbsp;</p>
   <p>text</p>
   <p><a href="#"><img src="#"></a></p>
</div>

&lt;p&gt; 或其他项目的数量将未定义。我怎样才能只选择第一个 img 来执行“display:none;”?

我的猜测是我必须将 .entry-content 作为父级,但如果我执行 img:first-child,它会将 &lt;p&gt; 作为父级,如果有更多图片,则不会显示所有图片。这就是为什么应该像祖父一样的东西 :D 如果我们必须使用其他语言而不是 CSS,我当然是开放的。

【问题讨论】:

    标签: jquery css wordpress


    【解决方案1】:

    使用纯 CSS 无法做到这一点,但在 jQuery 中非常简单,您很可能已经在页面上加载了它:

    jQuery(document).ready(function($){
        $('.entry-content img').first().hide();
    });
    

    演示: http://jsfiddle.net/pq7rwfv3/

    【讨论】:

    • 非常感谢彼得!我确实尝试过你的演示并且效果很好! :) 很遗憾我现在无法访问代码来尝试它。我会在几个小时内确认。最好的,弗雷德
    【解决方案2】:

    在你的主题的functions.php中添加这个函数

    function Remove_image_tags($content) {
    // for example above function getting data by paramets 
    $content = "this is something with an <img src=\"test.png\"/> in it.";
     $content = preg_replace("/<img[^>]+\>/i", " ", $content); 
      return $content;
     }
    

    它会返回

    this is something with an in it.
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多