用CSS如何实现textArea中的placeholder换行功能

山有山的沉稳厚重,一年四季却能以不同的色彩风光展示山的美丽。活泼的有单调的一面,安静的有变换的色彩。静与动的搭配,单调与精彩的结合,也就组成了最美的风景。

textArea的placeholder不能换行。例如:

<textarea placeholder="第1行 \n 第2行 <br> 第3行 \A 第4行
第5行"></textarea>

这是不会起作用的,会原封不动地输出。

官方不认为这是一个bug:

The placeholder attribute represents a short hint (a word or short phrase)

For a longer hint or other advisory text, the title attribute is more appropriate.

意思就是说placeholder表示的是一个简单的提示(一个词或者一个短语),根本不需要换行。如文本太长,那就用title。

但是实际应用中,我们有时需要换行。如何解决?很多时候我们用JavaScript来解决,其实CSS也可以实现。

由于placeholder属性是可以用css操作的,所以我们可以用:after来把placeholder的内容写到CSS中,曲线救国。

CSS Code复制内容到剪贴板
  1. textarea::-webkit-input-placeholder:after{
  2. display:block;
  3. content:"line@\Aline#";/*\A表示换行*/
  4. color:red;
  5. };

以上是webkit的代码,Firefox类也有相应的版本:

CSS Code复制内容到剪贴板
  1. textarea::-moz-placeholder:after{
  2. content:"line@\Aline#";/*\A表示换行*/
  3. color:red;
  4. };

本文用CSS如何实现textArea中的placeholder换行功能到此结束。当你觉得没有人来爱你,别人看见的就是可怜兮兮,毫无魅力的你。小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
css让页脚保持在底部位置的四种方案

CSS如何使用Flex和Grid布局如何实现3D骰子

Flex布局史上最简单使用语法教程

新的CSS 伪类函数 :is() 和 :where()示例详解

纯CSS打字动画的如何实现示例