【发布时间】:2010-09-20 20:00:58
【问题描述】:
我在我的 HTML 中使用了这个:
<q> Hai How r u </q>
以引号显示文本,例如“Hai How r u”。
这在 FF 中可以正常工作,但在 IE 6.0 中不行。
请告诉我为什么会发生这种情况,以及您可能知道的任何解决方案。
我不想在我的 HTML 或单独的 css 文件中使用引号 (") 字符。
【问题讨论】:
标签: asp.net html css cross-browser
我在我的 HTML 中使用了这个:
<q> Hai How r u </q>
以引号显示文本,例如“Hai How r u”。
这在 FF 中可以正常工作,但在 IE 6.0 中不行。
请告诉我为什么会发生这种情况,以及您可能知道的任何解决方案。
我不想在我的 HTML 或单独的 css 文件中使用引号 (") 字符。
【问题讨论】:
标签: asp.net html css cross-browser
我想这并没有真正回答这个问题,但我忽略了引号不会在 IE6 上呈现的事实。我用这个设置了一个样式表:
q:before { content: "\201c"; }
q:after { content: "\201d"; }
q q:before { content: "\2018"; }
q q:after { content: "\2019"; }
这会在q 元素之前和之后呈现弯引号。适用于 IE7 和适当的浏览器。如果您想要直引号,请将 201c 和 201d 替换为 0022。
您可以通过 Javascript 来解决 IE6 问题,或者对 q 标记应用一些不同的样式,例如以下将显示为斜体和深灰色:
q { font-style: italic; color: #444444; }
【讨论】:
Internet Explorer 8 支持 <q>。
<q> 存在很多问题,涉及多个嵌套的 <q> 元素(嵌套引号)和每种语言的“正确”引用样式。这阻碍了用户代理支持和采用率。
在 Firefox 中也并非一帆风顺,如果采用 CSS 生成的引号路线,当您的最终用户使用生成的字符剪切和粘贴文本时,这些字符不会进入您的剪贴板。 (see mozilla bug 12460)
【讨论】:
为什么不直接使用" 字符?与<b> 和<i> 应分别替换为strong 和强调不同,quote 标签在含义上与quote 字符直接匹配。应该没有必要使用<q>。
编辑:感谢您澄清问题。 OP:您不想使用引号是否有特定的原因?我之前说的内容仍然有效,但也许我们可以帮助解决阻止您使用引号的问题。
编辑 2: :|
【讨论】:
与引号的含义并不完全相同。引号,尽管它们的名字,有很多含义,其中一些更适合其他标签或英语中不存在的字符(例如“吓唬引号”[看,我不只是引用某人])。
A List Apart 有一整篇文章专门讨论 <q> 标签:
Long Live The Q Tag
总结就是在Firefox和其他浏览器中添加CSS删除引号,然后自己手动编码。这有点痛苦,但至少它平衡了竞争环境,并且您知道您的内容在跨浏览器时看起来是一样的。
如果您真的不想自己输入引号,那么看看这些文章:
【讨论】: