【问题标题】:Hide a DIV which has no class/id隐藏没有类/ID的DIV
【发布时间】:2013-10-09 09:23:24
【问题描述】:

是否可以通过 css 或 javascript 隐藏没有 class/id 的 div?页面中可能会出现另一个这样的 div。

<div align="center">text here</div>

实际上,它是一个 ebay 列表模板,将使用的软件在底部添加了这个 div,其中包含 javascript 和 flash 库,这就是我想隐藏那个东西的原因。

div 在 2 cmets 之间:

<!--GalleryShowcaseFlash-->
<div align="center">text here</div>
<!--EndOfGalleryShowcaseFlash-->

这些 cmets 可以帮助用 javascript 删除它们之间的 div 吗?

【问题讨论】:

  • 你如何识别这个 div,有什么东西使它与众不同
  • 是的,div { display: none; } 会这样做(但它会隐藏所有没有明确设置的具有更高特异性的 display 属性的 div)。如果您向我们展示完整的 HTML 标记,我们也许可以使用 psuedoclasses 仅选择有问题的 div。
  • 你有什么反对我的东西吗?
  • 只有在 &lt;div&gt; 的其他内容唯一标识它时才能执行此操作(因为这是您使用类和 id 的目的)。正如其他人在此处和此处提到的那样,这些其他标识符包括它在您的标记中的位置及其祖先元素(允许在 CSS/JS 中使用特定的选择器)、其他属性(例如您的 align 属性)在它上面(同样是一个 CSS/JS 选择器),或者它里面的内容(这将需要 JS 来确定和使用)。老实说,除非您无法控制标记或其他内容,否则您应该使用类/id。
  • 既然您现在已经让我们知道 &lt;div&gt; 位于两个评论元素之间,您也许可以在 this jQuery comment plugin 的帮助下选择一个特定的 cmets(并过滤评论文本内容),然后选择该元素的下一个(或上一个)兄弟元素,即&lt;div&gt;。通过this question找到插件链接。

标签: javascript jquery css html


【解决方案1】:

这里没有太多可以具体说明的内容,您应该添加一个类或 ID。没有它,它必须是这样的:

div[align="center"] {
    display: none;
}

至于那个文本选择器,it's not possible in CSS

如果是 jQuery,我们可以更具体一点,然后做

$("div[align='center']:contains('text here')").hide();

【讨论】:

  • 这确实需要 jQuery。
  • @JoshuaDwire 好点,我错过了。添加了一个 CSS attempt :)
  • 谢谢,我试试这个jquery。
  • vue有什么办法可以做到这一点我想隐藏一个图表消息,它没有任何类
【解决方案2】:

是的,您可以通过伪选择器来设置样式,例如 nth child(如果您知道该 div 所在的位置),或者通过该 div 上的属性来设置样式。

【讨论】:

    【解决方案3】:
    $("div")
        .contents()
        .filter(function() {
             return this.text() == "text here";
    })
      .hide();
    

    【讨论】:

    • 谢谢,我试试看。
    【解决方案4】:

    此 CSS 将隐藏所有没有 ID 或类的 DIV:

    div {display:none}
    div[class], div[id] {display:block;}
    

    你去这里工作吧:http://jsfiddle.net/heQjm/

    【讨论】:

      【解决方案5】:

      如果某个父级或兄弟级具有已知的类或 ID,则可能是这样。使用 JavaScript,您可以跟踪该父/兄弟元素并从那里跟踪。

      但一般来说,你会受制于元素(可以这么说)。

      【讨论】:

        【解决方案6】:

        你可以使用:

        div {
            display:none;
        }
        

        但这会隐藏所有的 div。

        您可以在这里查看:http://jsfiddle.net/5r4TD/

        【讨论】:

        • 这将隐藏页面上的所有div
        猜你喜欢
        • 2013-11-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多