代码之家  ›  专栏  ›  技术社区  ›  Thariama

如何删除伪元素(在…之后、之前…)

  •  186
  • Thariama  · 技术社区  · 14 年前

    我想在网页上使用段落标记布局的开关。

    我使用后伪元素

    p:after {content: url("../img/paragraph.gif");}
    

    现在我需要从页面中删除这个CSS代码。如何轻松完成此操作(jquery已在页面上使用)?(我不想包括或删除包含css的文件)

    6 回复  |  直到 7 年前
        1
  •  354
  •   Thariama    7 年前
    p:after {
       content: none;
    }
    

    没有人 是将内容(如果指定)设置为Nothing的官方值。

    http://www.w3schools.com/cssref/pr_gen_content.asp

        2
  •  25
  •   Community kavare    7 年前

    您需要添加一个删除后面内容的CSS规则( 通过一堂课


    更新 因为一些有效的评论。

    完全删除/禁用 :after 规则就是使用

    p.no-after:after{content:none;}
    

    作为 Gillian Lo Wong answered .


    原始答案

    您需要添加一个删除后面内容的CSS规则( 通过一堂课

    p.no-after:after{content:"";}
    

    并将该类添加到 p 当你想用这条线的时候

    $('p').addClass('no-after'); // replace the p selector with what you need...
    

    工作示例: http://www.jsfiddle.net/G2czw/

        3
  •  17
  •   Henrik Albrechtsson    11 年前
    $('p:after').css('display','none');
    
        4
  •  7
  •   Emile Bergeron Dhaval Rajpara    7 年前

    AS mentioned in Gillian's answer 分配 none content 解决问题:

    p::after {
       content: none;
    }
    

    请注意 CSS3 , W3C 建议使用两个冒号( :: 伪元 喜欢 之前 之后 .

    MDN web doc on pseudo-elements

    注: 通常,双冒号( :: )应使用而不是单个 结肠 : )这区分了伪类和伪元素。 但是,由于在旧版本的 W3C规范,大多数浏览器都支持这两种语法 兼容性。注意 ::selection 必须始终以double开头 结肠 :: )

        5
  •  5
  •   drewww    11 年前

    这取决于伪选择器实际添加的内容。在您的情况下,将内容设置为 "" 将摆脱它,但如果你正在设置边界或背景或其他,你需要特别零那些。据我所知,没有一种方法可以完全消除关于前/后元素的所有内容,不管它是什么。

        6
  •  -4
  •   Tha'er AlAjlouni ثائر العجلوني    7 年前
    p:after {
      content: none;
    }
    

    这是移除 :after 你也可以这样做 :before