php - 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
的句子中增加了一个新行。
有什么办法可以避免这种情况?
解决方案
我会推荐并确保您对自己的和属性style="resize: vertical;
尽可能慷慨。cols
rows
这将避免生成不需要的换行符并消除水平滚动的可能性。
我在https://www.w3schools.com/tags/tryit.asp?filename=tryhtml5_textarea_wrap做了一个快速/肮脏的测试
正如@Funk 评论的那样,overflow-x: hidden
这是另一种有效的样式技术。
但是,嘿,textarea 的默认行为是无论如何都会为您包装它。您是否将其他样式应用于您的元素,但您没有告诉我们?文本区域是否被其他元素限制?
推荐阅读
- java - Slf4j log.debug 在函数 bean 中抛出 NPE
- amazon-web-services - 在 lambda 环境变量中存储 Web 服务 URL
- xaml - 禁用标签上的剪辑
- python - 使用 SQLalchemy 从 Docker 容器连接到外部 MySQL 数据库
- c++ - std::reverse_iterator 是否适用于适应范围?
- java - Java.persistance.rollback.rollback 异常
- android - 为什么在 Java 错误中不推荐使用底部导航?
- spring-boot - 如何摆脱为id“null”映射的No PasswordEncoder
- apache-kafka - Debezium 流 数值解码
- string - 修剪带有任意数量下划线的字符串,直到保留一定数量的下划线