HTML5 textarea占位符不出现

我无法弄清楚我的标记有什么问题,但文本区域的占位符不会出现。 看起来好像它可能被一些空白和标签覆盖。 当你关注文本区域并从光标放置的地方删除,然后离开文本区域,然后出现正确的占位符。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> </head> <body> <form action="message.php" method="post" id="message_form"> <fieldset> <input type="email" name="email" id="email" title="Email address" maxlength="40" placeholder="Email Address" autocomplete="off" required /> <br /> <input type="text" name="subject" id="subject" title="Subject" maxlength="60" placeholder="Subject" autocomplete="off" required /> <br /> <textarea name="message" id="message" title="Message" cols="30" rows="5" maxlength="100" placeholder="Message" required> </textarea> <br /> <input type="submit" value="Send" id="submit"/> </fieldset> </form> </body> <script> $(document).ready(function() { $('#message_form').html5form({ allBrowsers : true, responseDiv : '#response', messages: 'en', messages: 'es', method : 'GET', colorOn :'#d2d2d2', colorOff :'#000' } ); }); </script> </html> 

对我和其他人来说,这一直是个棘手的问题。 简而言之, <textarea>元素的开始和结束标记必须位于同一行,否则换行符将占用它。 因此占位符将不会显示,因为input区域包含内容(换行符是技术上有效的内容)。

好:

  <textarea></textarea> 

坏:

  <textarea> </textarea> 

删除<textarea>打开和closures</textarea>标记之间的所有空格和换行符。

 <textarea placeholder="YOUR TEXT"></textarea> ///Correct one <textarea placeholder="YOUR TEXT"> </textarea> ///Bad one It's treats as a value so browser won't display the Placeholder value <textarea placeholder="YOUR TEXT"> </textarea> ///Bad one 

因为有一个空间的地方。 我正在使用jsfiddle,标签后面有一个空格。 我删除了它开始工作的空间之后

那么,从技术上讲,只要在开始标记的结尾“>”和结束标记的开始“<”之间没有字符,就不必在同一行。 那就是你需要以...></textarea>结尾,如下例所示:

 <p><label>Comments:<br> <textarea id = "comments" rows = "4" cols = "36" placeholder = "Enter comments here" class = "valid"></textarea> </label> </p> 

使用<textarea></textarea>而不是在开始标签和结束标签之间留出一个空格作为<textarea> </textarea>

我有同样的问题,只使用.pug文件(类似于.jade )。 我意识到这也是一个空间问题 ,在我的右括号结束后。 在我的示例中,您需要突出显示(placeholder="YOUR MESSAGE")后面的文本(placeholder="YOUR MESSAGE")以查看:

之前:

 form.form-horizontal(method='POST') .form-group textarea.form-control(placeholder="YOUR MESSAGE") .form-group button.btn.btn-primary(type='submit') SUBMIT 

后:

 form.form-horizontal(method='POST') .form-group textarea.form-control(placeholder="YOUR MESSAGE") .form-group button.btn.btn-primary(type='submit') SUBMIT 

在我们的情况textarea标记的开始和结束标记之间不应该是空格换行符或任何文本(值)。

如果有空格,换行符或任何文本,则将其视为覆盖占位符的值。

  **PlaceHolder Appears** <textarea placeholder="Am Default Message"></textarea> **PlaceHolder Doesn't Appear** <textarea placeholder="Am Default Message"> </textarea> <textarea placeholder="Am Default Message"> </textarea> <textarea placeholder="Am Default Message">Something</textarea>