问问题
24030 次
3 回答
103
:before
and:after
不适用于 a text-area
(也不适用于任何不能包含另一个元素的元素,例如or img
)input
,因为伪元素的生成内容被放置在元素内但在该元素的内容之前或之后,并将其自身作为一个元素. 伪元素不会放置在父元素本身之前或之后(与互联网上可能找到的一些信息相反)。为了显示:
如果你有这个 CSS:
p:before {content: 'before--'}
p:after {content: '--after'}
然后像这样的html:
<p>Original Content</p>
像源代码一样有效地呈现到屏幕上:
<p>before--Original Content--after</p>
不像 源代码是:
before--<p>Original Content</p>--after
这就是为什么不能包含任何html元素“内容”(如上面提到的那些)的标签无法识别伪元素的原因,因为没有生成该内容的“位置”。textarea
可以包含“内容”,但只能包含纯文本内容。
于 2010-07-20T18:45:22.980 回答
0
<div class='tx-div-before'></div>
在 textarea 和
<div class='tx-div-after'></div>
在 textarea 之后使用此代码。并在 psedu 元素之前和之后添加。
于 2020-07-16T18:09:14.000 回答
-8
:after
实际上,您可以在输入元素上添加内容。当元素处于活动状态时,这将添加一种提示:
#gallery_name {
position:relative;
}
#gallery_name:focus:after {
content: "Max Characters: 30";
color: #FFF;
position: absolute;
right: -150px;
top:0px;
}
<input id="gallery_name" type="text" name="gallery_name" placeholder="Gallery Name">
于 2012-06-02T19:35:12.773 回答