我有一个简单的文本区域,像这样的形式:

<textarea style="width:350px; height:80px;" cols="42" rows="5" name="sitelink">
    <?php if($siteLink_val) echo $siteLink_val; ?> 
</textarea>

我一直在这个文本区域得到额外的空白。当我tab到它,我的光标就像在文本区域的中间,而不是在开始?怎么解释呢?


当前回答

为了让它看起来更简洁,可以考虑使用三元操作符:

<textarea><?=( $siteLink_val ? $siteLink_val : '' );?></textarea>

其他回答

我也遇到了同样的问题,解决方法很简单:不要开始新的路线!虽然前面的一些答案可以解决这个问题,但其思想没有阐述清楚。 重要的理解是,为了消除意外的空格,永远不要在开始标记之后开始新行。

下面的方法是错误的,会在你的文本内容之前留下很多不必要的空格:

 <textarea>
    text content // start with a new line will leave a lot of unwanted spaces
 </textarea>

正确的做法是:

 <textarea>text content //put text content right after your start tag, no new line
 </textarea>

好吧,<textarea>和</textarea>之间的所有内容都被用作textarea框的默认值。在你的例子中有一些空白。试着消除所有这些。

简而言之: <textarea>应该立即在它开始的同一行上关闭。


一般做法:这将增加代码中用于缩进的换行符和空格。

<textarea id="sitelink" name="sitelink">
</textarea>

正确的做法

<textarea id="sitelink" name="sitelink"></textarea>

为了让它看起来更简洁,可以考虑使用三元操作符:

<textarea><?=( $siteLink_val ? $siteLink_val : '' );?></textarea>

此外:textarea标签在多行代码中为新行、制表符等显示空格。