簡體   English   中英

::before 選擇器可以與<textarea> ?

[英]Can a ::before selector be used with a <textarea>?

我在<textarea>上嘗試了一些樣式,我嘗試用::before::after選擇器做一些事情,但我無法讓它們工作。 所以問題是:這可能嗎? 我知道圍繞表單的 CSS 是難以言喻的,但似乎這應該可行。

:before:after不適用於text-area (也不能包含任何不能包含另一個元素的元素,例如imginput ),因為偽元素的生成內容被放置元素內但之前之后元素的內容,並將其自身作為一個元素。 偽元素不會放置在父元素本身之前或之后(與可能在 Internet 上找到的某些信息相反)。 為了顯示:

如果你有這個 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可以包含“內容”,但只能包含純文本內容。

<div class='tx-div-before'></div>

在 textarea 和

<div class='tx-div-after'></div> 

在 textarea 之后使用此代碼。 並在 psedu 元素之前和之后添加。

實際上,您可以使用: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">

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM