【发布时间】:2013-03-21 02:31:43
【问题描述】:
似乎从 IE7 到 IE10 的 IE 在使用 \n (或 \r\n - 没关系 - 结果相同)时错误地将 textarea 控件中的文本换行。这是 IE 中的一个错误,还是他们对待 html 标准的方式与其他浏览器不同——谁是对的?我已经定义了:
<textarea id="TextArea1" runat="server" style="width: 190px; height: 390px; white-space: normal; word-wrap: normal; overflow: scroll" ></textarea>
当我尝试使用 JavaScript 代码 (obj.value += text;) 添加长字符串(如“VeryLongStringEndingWithNewLine\n”)时,文本显示在一行中并带有滚动条(这没关系),但添加了一个额外的空行(\r\n) - 为什么? 当我尝试多次添加像“Short\n”这样的短字符串时,再次通过JavaScript代码,文本位于同一行(应该在单独的行上,因为应该应用正常换行)。 此外,当我进行回发时,所有 \r\n 都被替换为空格(为什么?),然后正确解析文本(假设我使用空格而不是 crlf 正常换行,只有在不适合该区域时才换行)。
当使用 FF 或 Chrome 时,相同的控件行为正确 - 显示长行而没有额外的空下一行,短行在不同的行上,回发时不会用空格替换。
我知道我可能可以使用其他选项或空白字符,但我觉得上面关于 IE 的说法不正确。有cmets吗?
【问题讨论】:
标签: html internet-explorer textarea word-wrap