强制TEXTAREA元素换行的最优雅方法,无论空白如何
时间:2020-03-05 18:48:47 来源:igfitidea点击:
HTML Textarea元素仅在到达空格或者制表符时才换行。没问题,直到用户键入足够足够的单词loooooooooooooooooooooooooooo为止。我正在寻找一种严格执行换行符的方法(例如:即使导致" loooooooooooooo \ n ooooooooooong")。
我发现最好的方法是在每个字母后添加一个零宽度的unicode空间,但这会破坏复制和粘贴操作。有人知道更好的方法吗?
注意:我在这里指的是" textarea"元素(即:与文本输入类似的行为),而不仅仅是普通的旧文本块。
解决方案
回答
至少有非标准元素wbr支持
Firefox,http://developer.mozilla.org/En/HTML/Element
Internet Explorer,http://msdn.microsoft.com/en-us/library/ms535917(VS.85).aspx
和歌剧。
回答
- quirksmode.org概述了各种方法。
- 有一个相关的SO问题:"在HTML中,如何在短划线处断字?"
- 在支持该功能的浏览器中,
word-wrap:break-word
可能也会产生预期的效果。
回答
我测试了<wbr>和技术。这三者在IE 7,Firefox 3和Chrome中都运行良好。
唯一不会破坏复制/粘贴的是<wbr>标记。
回答
CSS设置word-wrap:break-word
和text-wrap:unrestricted
似乎是CSS 3的功能。祝我们找到在当前实现中执行此操作的方法。
回答
根据我的测试,当前浏览器中只有Firefox具有上述行为。因此,我猜我们最好的选择是等待即将发布的Firefox 3.1解决问题:)