哪些元素支持:: before和:: after伪元素?
我正在尝试为<input>
HTML5中的提出一些好的默认样式,并尝试了以下方法:
input::after { display: inline; }input:valid::after { content: ' ✓ '; color: #ddf0dd; }
input:invalid::after { content: ' ✗ '; color: #f0dddd; }
las,::after
内容从不显示。对于伪元素,双冒号和单冒号都不是问题。我都尝试过。拥有一个伪元素和一个伪类也不是问题。我已经尝试过不使用:valid
和了:invalid
。在Chrome,Safari和Firefox中,我得到了相同的行为(Firefox没有:valid
和:invalid
类,但是我尝试了不使用它们。)
在伪元素工作细<div>
,<span>
,<p>
,和<q>
元素-其中一些是块元件和一些是内联。
因此,我的问题是:为什么浏览器同意<input>
s没有::after
?我在规范中找不到任何可以表明这一点的东西。
回答:
如您在这里阅读的http://www.w3.org/TR/CSS21/generate.html,:after仅适用于具有(文档树)内容的元素。<input>
没有内容,以及<img>
或<br>
。
以上是 哪些元素支持:: before和:: after伪元素? 的全部内容, 来源链接: utcz.com/qa/421288.html