输入在 Internet Explorer 8 中的 textarea 中不起作用
Posted
技术标签:
【中文标题】输入在 Internet Explorer 8 中的 textarea 中不起作用【英文标题】:enter does not work in textarea in Internet Explorer 8 【发布时间】:2010-11-19 21:53:58 【问题描述】:当我在一个 textarea 中按回车键时,它通过 css 将 whitespace 属性设置为 nowrap,它是无效的。不创建新行。 Instread 出现一个简单的空格。 这仅在 IE8 中是正确的。我已经尝试过当前版本的 Opera、Chrome 和 Firefox,我还没有遇到过这样的问题。 您对此有什么解决办法吗?
谢谢..
我有这个:
.gwt-TextArea
white-space:nowrap;
gwt-TextArea 设置文本区域的位置。
我也试过了
.gwt-TextArea
white-space:pre;
它似乎给出了相同的结果。
【问题讨论】:
FML,同样的问题.. 【参考方案1】:This article 表示 Internet Explorer 忽略换行符 with white-space: nowrap
。
他们的解决方法是使用white-space: pre
。这会让你得到你想要的行为吗?
【讨论】:
【参考方案2】:因此,不幸的是,解决方案是 -对于 Internet Explorer 7,除 pre
之外的任何 white-space
值都将导致此问题。对于 Internet Explorer 8,任何 white-space
值其他比pre-wrap
会导致这个问题。
不过,我还没有尝试过 Internet Explorer 9。如果那里也发生这种情况,只需使用(文档类型和)<textarea>
创建一个空白页面,打开它并按 F12。在控制台(“脚本”选项卡)中,键入 console.log(document.getElementsByTagName("TEXTAREA")[0].currentStyle.whiteSpace)
并简单地将输出中显示的值用作 <textarea>
的 white-space
属性的值。
更新
我尝试了 Internet Explorer 11。在 Internet Explorer 7 模式之后的仿真模式下,它的行为类似于 Chrome 的怪癖模式(也就是说,只有 white-space: normal
和 white-space: nowrap
会导致此问题)。
我猜他们(无意中?)对大多数仿真模式进行了一些修复。
【讨论】:
此问题在 Internet Explorer 11 中仍然存在,即使您将white-space
值明确设置为 normal
。
@wangkaibule - 如果您将其设置为 normal
或 nowrap
,Chrome 会忽略新行。我想这是设计使然。不过,Internet Explorer 11 修复了其余部分。我用有关 Internet Explorer 11 的数据更新了我的答案。【参考方案3】:
必须是 CSS 解决方案吗?如果没有,您可以为 textarea 分配属性 wrap="off"。
【讨论】:
IE9 和 Chrome 13 之间的行为不一致。设置属性 wrap="off" 在两种浏览器中的效果相同。【参考方案4】:可用选项(在此处找到:Quirksmode.org)是:
正常 nowrap,IE5.5+ pre,IE6+ 预行 IE8 预包装 IE8可能值得使用white-space: normal
(我没有可以用来试验的 IE,但我想如果可以将状态更改为 ab,normal
将默认可用>正常)。
已编辑,关于 OP 的评论/回复。
您使用的是文档类型吗? (我推荐使用<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
)
假设您是,您是否有机会发布指向演示页面的链接?或者发布您的 (x)html 和 css,看看是否存在某种样式覆盖或拼写错误,从而阻止应用 css?
【讨论】:
前置行不行,它不保留空格和制表符。我试过pre,它不起作用。正常是包装模式,这也无济于事。我查看了 quirksmode.org。它声称 IE8 与 pre 和 nowrap 完全兼容。在我看来并非如此。至少对于 textareas。以上是关于输入在 Internet Explorer 8 中的 textarea 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
onkeydown 和 onkeyup 事件在 Internet Explorer 8 上不起作用
为啥即使在模拟 Internet Explorer 8 文档模式时,Internet Explorer 11 也不支持条件注释?
高度:在 Internet Explorer 8 及更低版本中自动
无法在 Internet Explorer 8 中显示 SVG 图表