1 ответ:
Использование
:beforeили:afterв теге<video>не будет работать. Вы также найдете этот случай (к сожалению) с элементами управления вводом HTML (например, текстовые поля).Это связано с тем, как работают элементы
:beforeи:afterpsuedo. Это объекты коробочной модели, которые работают, например, какdiv, но помещаются внутри их родительского элемента. Такие элементы, как текстовые поля ввода и видео, не могут содержать дочерние элементы, поскольку это касается контента (видео имеет дочерние теги src, но это другое).Например. если бы у вас был HTML:
<div class="awesome-highlight"> ... </div>И CSS:
.awesome-highlight::after { content: 'Hello World'; }Оказываемый эффект будет:
<div class="awesome-highlight"> ... Hello World </div>Дополнительная информация:
W3: http://www.w3.org/TR/CSS21/generate.html
Старый ответ Stackoverflow: какие элементы поддерживают псевдо-элементы:: before и:: after?
Comments