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

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

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


当前回答

简单地把所有这些写在一行中

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

其他回答

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


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

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

正确的做法

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

我反对HTML代码与PHP代码混合。

但是试试这个:

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

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

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

此外,当你说光标是在“中间”的文本区域,这让我认为你也可以有额外的填充或文本对齐:中心定义在你的CSS某处。

文本区域开始和结束标签之间的任何空格都将被视为空白。所以对于上面的代码,正确的方法是:

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