0

我在我的 HTML 中使用了这个:

<q> Hai How r u </q>

它以引号显示文本,例如“Hai How r u”。

这在 FF 中运行良好,但在 IE 6.0 中却不行。

请让我知道为什么会发生这种情况,以及您可能知道的任何解决方案。

我不想在我的 HTML 或单独的 css 文件中使用引号 (") 字符。

4

4 回答 4

3

A List Apart 有一整篇文章专门讨论这个<q>标签:
Long Live The Q Tag

总结就是在火狐等浏览器中添加CSS去掉引号,然后自己手动编码。这有点痛苦,但至少它平衡了竞争环境,并且您知道您的内容看起来与跨浏览器相同。

如果您真的不想自己输入引号,请查看以下文章:

于 2008-11-05T05:38:15.330 回答
3

<q>Internet Explorer 8 支持它的价值。

<q>涉及多个嵌套<q>元素(嵌套引号)和每种语言的“正确”引用样式存在很多问题。这阻碍了用户代理支持和采用率。

在 Firefox 中也并非一帆风顺,如果使用 CSS 生成的引号路线,当您的最终用户使用生成的字符剪切和粘贴文本时,这些字符不会进入您的剪贴板。(见 Mozilla 错误 12460

展望未来, W3C HTML 工作组在2008 年 10 月有一个关于 HTML 5 应该做什么的有趣线程<q>

于 2008-11-06T18:54:51.367 回答
0

为什么不直接使用"字符?与应该分别替换为强和强调不同的是,引号标记在含义上与引号字符直接匹配<b><i>应该没有必要使用<q>.

编辑:感谢您澄清问题 Yan。OP:您不想使用引号是否有特定的原因?我之前说的内容仍然有效,但也许我们可以帮助解决阻止您使用引号的问题。

编辑2::|

于 2008-11-05T05:35:48.330 回答
0

我想这并没有真正回答这个问题,但我忽略了引号不会在 IE6 上呈现的事实。我用这个设置了一个样式表:

q:before { content: "\201c"; }
q:after { content: "\201d"; }

q q:before { content: "\2018"; }
q q:after { content: "\2019"; }

这会在元素之前和之后呈现花引号。q适用于 IE7 和适当的浏览器。如果您想要直引号,请替换201c和。201d0022

解决 IE6 问题的方法是使用 Javascript,或者对q标签应用一些不同的样式,例如,以下将显示为斜体和深灰色:

q { font-style: italic; color: #444444; }
于 2009-03-08T22:55:27.247 回答