Ответ 1
p:after {
content: none;
}
none - официальное значение для установки содержимого, если оно указано, в ничто.
Я хотел бы использовать переключатель для макета тегов абзаца на веб-странице.
Я использую после псевдоэлемента
p:after {content: url("../img/paragraph.gif");}
Теперь мне нужно удалить этот код css со страницы. Как это можно сделать легко (jquery уже используется на странице)? (я не хочу включать или удалять файлы, содержащие css)
p:after {
content: none;
}
none - официальное значение для установки содержимого, если оно указано, в ничто.
Вам нужно добавить правило css, которое удаляет содержимое после (через класс).
обновление из-за допустимых комментариев.
Более правильным способом полного удаления/отключения правила :after
является использование
p.no-after:after{content:none;}
Оригинальный ответ
Вам нужно добавить правило css, которое удаляет содержимое после (через класс).
p.no-after:after{content:"";}
Забастовкa > и добавьте этот класс к вашему p
, если вы хотите использовать эту строку
$('p').addClass('no-after'); // replace the p selector with what you need...
рабочий пример: http://www.jsfiddle.net/G2czw/
$('p:after').css('display','none');
Как упоминается в ответе Джиллиан, назначение none
для content
решает проблему:
p::after {
content: none;
}
Обратите внимание, что в CSS3 W3C рекомендовал использовать два двоеточия (::
) для псевдоэлементов, как до или после.
Из веб-документа MDN о псевдоэлементах
Примечание: Как правило, двойные двоеточия (
::
) следует использовать вместо одного толстая кишка (:
). Это отличает псевдоклассы от псевдоэлементов. Однако, поскольку это различие не присутствовало в более старых версиях спецификации W3C, большинство браузеров поддерживают оба синтаксиса ради совместимость. Обратите внимание, что::selection
всегда должен начинаться с двойного двоеточия (::
).
Это зависит от того, что фактически добавляется псевдоселекторами. В вашей ситуации настройка содержимого на ""
избавится от него, но если вы устанавливаете границы или фон или что-то еще, вам нужно их обнулить. Насколько я знаю, нет никого излечения - все для удаления всего элемента до/после, независимо от того, что это такое.
у меня была такая же проблема несколько минут назад и просто content:none;
не работал, но добавление content:none !important;
и display:none !important;
мне помогло
p:after {
content: none;
}
Это способ удалить :after
, и вы можете сделать то же самое для :before
.