在带有空白的 PRE 中美化突出显示:nowrap 在 IE 中是一行
在 Internet Explorer 中,样式为 white-space:nowrap
的 PRE
会导致 PRE
中的代码在以下情况下位于一行中:我使用 prettify (http://code.google.com/p/google-code -美化/)。
难道
不应该在 PRE
中产生新行吗?我在页面加载后检查了 prettify 生成的 HTML 源,当遇到换行符时它会生成
。
请参阅 http://blog.mikecouturier.com /2009/12/google-street-view-with-google-maps_27.html 为例。
这在 FF 和 Chrome 中都不会发生。
谢谢
编辑:也许这与此有关:将换行符插入预标记(IE、Javascript)
In Internet Explorer, a PRE
with a style of white-space:nowrap
is causing the code in the PRE
to be in one single line when I use prettify (http://code.google.com/p/google-code-prettify/).
Doesn't a <br/>
is supposed to cause a new line in a PRE
? I checked the HTML source generated by prettify after the page has loaded and it generates <br/>
when it encounter newlines.
See http://blog.mikecouturier.com/2009/12/google-street-view-with-google-maps_27.html for an example.
This doesn't happen in FF nor Chrome.
Thanks
EDIT: Maybe this is related to this: Inserting a newline into a pre tag (IE, Javascript)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
来自Internet Explorer innerHTML Quirk:
这是另一个 IE 独有的“bug”(即使是他们发明了innerHTML)。在第一个链接中,你有这个问题的解决方案,但正如卢卡斯指出的那样,所有这些似乎都指向谷歌的代码,而你无法控制。
From The Internet Explorer innerHTML Quirk:
This is another IE only "bug" (even if it's them who invented innerHTML). In the first link you have solutions to this problem but as Lucas pointed out all seems to point at code by Google which you have no control over.
嘿litb,你是对的,在IE6和IE7版本中,
pre
标签代码显示在1行上。我仅针对 IE6 和 7 浏览器添加了这个小修复。我已经测试过它,它工作正常,这有点 hacky,因为我实际上用
标签替换
标签,但这并不'不会在 IE6 和 7 浏览器中造成任何视觉差异。您可以将此代码片段添加到 HTML 页面的任何位置。它使用 jQuery。
在谷歌修复 IE6 和 IE6 的美化代码之前,这可能是您最好的选择。 7.
Hey litb, you're right, in versions IE6 and IE7 the
pre
tag code is displayed on 1 line. I've added this small fix for browsers IE6 and 7 only.I've tested it and it works fine, it's a bit hacky because I'm actually replacing
<br>
tags with<p>
tags, but this doesn't cause any visual difference in the IE6 and 7 browsers.You can add this snippet of code anywhere on your HTML page. It's using jQuery.
This is probably your best option until google fixes their prettify code for IE6 & 7.