HTML标记语言——引用(3)
概要
让我们快速回顾一下,为什么方法C在标记长引用的时候比其他两种方法棒.
方法A:
- 无法轻易加上不同的样式,使它与页面其他内容区分开来
- 不提供任何引用的语义,结构标识.
方法B:
- 加上独特的分类让我们易于指定样式,但是<blockquote>可用,所以根本不需要
- 如果想要维持页面/网站的风格一致,在标记未来新增引用的时候,我们就会被限制在这个方法里面
方法C:
- 这是W3C为这个目标所设计的元素,能够标识内容的意义,结构.
- 容易使用CSS为<blockquote>元素内部的引用加上独特样式.
- 缺少CSS的时候,<blockquote>预设的表现方式足以让可视化,非可视化浏览器提供暗示.
现在是为<blockquote>打扮一番,寻找样式创意的好机会.
技巧延伸
我们来看看怎么为<blockquote>标签的引用内容上加上一些有创意的样式.不过在这之前,让我们先谈谈cite属性与行内引用.
给好奇宝宝的参考资料
对迂腐的标题感到厌倦了么?很好,我也是.在讨论引用的时候,一定得提到cite属性,根据W3C的规范,cite属性的目的是让设计者参照引用的出处,也就是说,如果引用是从其他网页摘录下来的,我们就可以在cite属性内记录那份网页的url.
让我们看看怎么书写这个属性:
<blockquote cite="http://www.somewebsite.com/path/to/page.html"
<p>Misquotations are the only quotations that are never
misquoted.</p>
<p>— Hesketh Pearson </p>
</blockquote>
在书写这段文字的时候,大多数浏览器都不会特别处理我们刚加上的cite属性,但是在能够处理cite属性的进阶css技巧或者scripting程序出现之后,事情就会开始变得有趣了.引言出处本身也是帮助描述标签内容的额外资讯,未来将会十分具有价值.
试着把加上cite想成把硬币丢进储蓄罐,这些硬币现在值不了多少,但是未来你将会庆幸一路上你有把它们全部存起来.
行内引用
要怎么处理简短,应该是在行内参考的引用呢?举例来说,如果你在这句子中提到其他人说过的话,这时就可以用<q>标签:
I said, <q>Herman, do you like bubblegum?</q> And he said,<q>Yes, the kind that comes with a comic.</q>
这在可视化浏览器上多半会显示成这样:
I said, Herman, do you like bubblegum?
And he said, Yes, the kind that comes with a comic.
不需要引号
大多数可视化浏览器会在使用<q>和</q>的时候自动加上引号,因此你不用自己输入,W3C也建议加上lang属性标识所应用的内容语言,某些语言可能会显示不同的引号.
I said, <q lang="en-us">Herman, do you like bubblegum? </q> And he said, <q lang="en-us">Yes, the kind that comes with a comic.</q>
你可以在W3C的网站上找到所有可用的语言代码.(www.w3.org/TR/html4/struct/dirlang.html#langcodes)
嵌套的行内引用
你也能在引用内容中嵌套引用其他文字,搞混了么?我也是,来看看示例吧:
I said, <q lang="en-us">Herman, do you like bubblegum? </q> And he said, <q lang="en-us">Yes. Bubblegum is what Harry calls <q lang="en-us">delicious</q>.</q>
此时浏览器会在适当的地方使用双引号和单引号,像是这样.
I said, Herman, do you like bubblegum?
And he said, Yes. Bubblegum is what Harry calls
delicious
.