占位符伪元素是否具有伪类?

时间:2016-06-03 14:41:13

标签: css css3 css-selectors pseudo-element pseudo-class

我想为placeholder的{​​{1}}伪元素的外观和消失设置动画。我的想法是将样式(特别是input[type=text])添加到前者的伪类中,这些类负责其存在(transition或类似的东西)。到目前为止,我还没有找到任何办法。

我试图将占位符伪元素转换为绝对定位的块,但它不起作用。另外几个策略也没有带来任何有意义的结果。因此这个问题。

P.S。我有强烈的感觉,这是CSS3规范禁止或根本没有涵盖。这很好,但是因为有CSS4 coming one day,我相信我的问题会在历史的路上得到一堆新的答案。

1 个答案:

答案 0 :(得分:2)

  

P.S。我有强烈的感觉,这要么被CSS3规范禁止,要么根本没有被覆盖。

Selectors 4表示伪元素是否具有用户操作伪类取决于伪元素。伪元素4,defines the ::placeholder pseudo-element,不评论它是否可以有伪类。

基于此,您可以假设这是CSS3规范禁止的。这是有道理的 - 你实际上可以实际上与占位符标签进行交互,因此在::placeholder伪元素上使用用户操作伪类将毫无意义。

话虽如此,如果您在控件进入或离开焦点时尝试设置占位符的外观和消失动画,您可以将伪类附加到控件,而不是占位符,并根据控件所在的状态设置占位符的样式。

即使如此,Pseudo-Elements 4(再次)表示只有适用于::first-line的属性也可能适用于::placeholder,所以你不会成为能够为其制作动画,也无法更改其显示类型或定位它。所以,无论如何,你在运气方面都非常不幸。

  

哪个好,但是因为有一天会出现CSS4

除非它不是。 selectors-4和css-pseudo-4是CSS3规范。