首页 > 解决方案 > textarea wrap hard 将新行添加到包装的单词

问题描述

我有一个脚本,可以在 textarea 中打印文件的内容,以便对文件的内容进行更改,然后对其进行更新。

$file_content = file_get_contents($filename);
if (isset($_POST['text']))
    file_put_contents($filename, $_POST['text']);

<textarea name="text" wrap="hard">
    echo htmlspecialchars($file_content, ENT_QUOTES, 'UTF-8');
</textarea>

为了使 textarea 编辑表单“更好看”,我添加了wrap="hard"属性,因此无需水平滚动即可查看文件的内容。

这个属性的问题是,当它换行时是一行的句子:使用表格更新文件后,换行在文件内容中也有效,在换行\n的句子中增加了一个新行。

有什么办法可以避免这种情况?

标签: phphtmltextareaword-wrap

解决方案


我会推荐并确保您对自己的和属性style="resize: vertical;尽可能慷慨。colsrows

这将避免生成不需要的换行符并消除水平滚动的可能性。

我在https://www.w3schools.com/tags/tryit.asp?filename=tryhtml5_textarea_wrap做了一个快速/肮脏的测试

正如@Funk 评论的那样,overflow-x: hidden这是另一种有效的样式技术。

但是,嘿,textarea 的默认行为是无论如何都会为您包装它。您是否将其他样式应用于您的元素,但您没有告诉我们?文本区域是否被其他元素限制?


推荐阅读