我尝试了几种方法,但都没有奏效。有谁知道一个巧妙的技巧来解决这个问题?
<textarea placeholder='This is a line \n this should be a new line'></textarea> <textarea placeholder='This is a line should this be a new line?'></textarea> <!-- this works in chrome apparently -->
更新:它在 chrome 中不起作用。这只是文本区域的宽度。
见:http: //jsfiddle.net/pdXRx/
您可以做的是将文本添加为value ,它尊重换行符\n。
value
\n
$('textarea').attr('value', 'This is a line \nthis should be a new line');
然后您可以将其删除focus并重新应用(如果为空)blur。像这样的东西
focus
blur
var placeholder = 'This is a line \nthis should be a new line'; $('textarea').attr('value', placeholder); $('textarea').focus(function(){ if($(this).val() === placeholder){ $(this).attr('value', ''); } }); $('textarea').blur(function(){ if($(this).val() ===''){ $(this).attr('value', placeholder); } });
示例:http: //jsfiddle.net/airandfingers/pdXRx/247/
不是纯 CSS,也不是 干净 的,但可以解决问题。