生成內(nèi)容有一種特殊形式,即引號,網(wǎng)站建設(shè)提供了一種有效的方式來管理引號及其嵌套行為。由于提供了open-quote等成對的content值以及屬性quotes,使得生成引號的管理成為可能。
quotes
值:[<string><string>]+ | none | inherit
初始值:取決于具體的用戶代理
應(yīng)用于:所有元素
繼承性:有
計算值:根據(jù)指定確定
研究值的語法時可以發(fā)現(xiàn),除了關(guān)鍵字none和inherit外,唯一合法的值是一對或多對串。在一對串中,前一個串定義了開始引號(open-quote),第二個串定義了結(jié)束引號(close-quote)。因此,以下兩個聲明中僅第一個合法:
quotes:'"'"'"./* valid */
quotes:'"';/* NOT VALID */
串本身是引號時,也可以用引號將其包圍,第一個規(guī)則就展示了這樣一種方法。雙引號可以由單引號包圍,反之亦然。
下面來看一個簡單的例子。假設(shè)創(chuàng)建了一個XML格式,存儲最常用的引用列表。以下是列表中的一項:
<quotatidn>
<quote>I hate quotations.</quote>
<quotee>Ralph Waldo Eraerson</quotee>
</quotation>
要用一種有意義的方法表示數(shù)據(jù),網(wǎng)頁設(shè)計人員可以采用以下規(guī)則,其結(jié)果見圖12-20所示:
值open-quote和close-quote用于插入合適的引號符號(因為不同語言有不同的引號)。它們使用quotes值來確定如何工作。因此,quotation以一個雙引號開始,并以一個雙引號結(jié)束。
如果想使用“彎引號”而不是普通的直引號(這在大多數(shù)打印媒體中很常見),quote 規(guī)則要寫作:
quote {quotes:'\201C''\201D';}
這里使用了“彎引號”的十六進(jìn)制Unicode值,如果應(yīng)用到前面的quotation, Emerson 的引用會包圍在彎引號中,而不像圖12-20中所示那樣包圍在直引號中。
利用quotes,只要網(wǎng)頁設(shè)計人員愿意,可以定義任意多層嵌套引用模式。例如,在英語中,一種常用的做法是先以雙引號開頭,在其中嵌套的引用使用單引號。通過以下規(guī)則,就可以利用“彎引號”做到這一點:
quotation: display: block;}
quote {quotes:'\201C''\201D''\2018''\2019';}
quote:before, q:before{content: open-quote;}
quote:after, q:after {content: close-quote;}
應(yīng)用到以下標(biāo)記時,這些規(guī)則的效果如圖12-21所示:
<quotation>
<quote> In the beginning, there was nothing. And God said:<q>Let there be light!</q> And there was still nothing, but-you could see it.</quote>
</quotation>
如果引號的嵌套層次大于已定義的引號對數(shù),最后一對引號將重用于更深層次的嵌套。因此,如果向圖丨2-21所示的標(biāo)記應(yīng)用以下規(guī)則,內(nèi)層引用將與外層引用一樣使用雙引號:
quote {quotes:'\201C''\201D';}
利用生成引號,還能實現(xiàn)另外一種常見的排版效果。如果有多段引用文本,通常會忽略毎一段的結(jié)束引號(close-quote),而只顯示開始引號,只是最后一段例外,可以使用no-close-quote值達(dá)到這個效果:
blockquote (quotes:'"' '"' "'" '"' '"' '"';}
blockquote p:before {content: open-guote;}
blockquote p:after {content: no-close-quote;}
利用這個規(guī)則,每一段的開始處會有一個雙引號,不過沒有結(jié)束引號。最后一段也是如此,所以如果想為最后一段增加一個結(jié)束引號,需要為最后一段指定類(class),并為其:after內(nèi)容聲明一個close-quote。
這個值很重要,因為這樣可以使引用嵌套層次遞而不必真正生成一個符號。正因如此,在第三段之前,每個段落都以一個雙引號開始,而不是交替使用雙引號和單引號。no-close-quote在各段的最后結(jié)束了引用嵌套,因此每一段都從相同的嵌套層次開始。
這很重要,正如網(wǎng)站建設(shè)規(guī)范所指出的,"引用深度不依賴于源文檔或格式化結(jié)構(gòu)的嵌套”。換句話說,開始一個引用層次時,所有元素都有相同的嵌套層次,直到遇到一個close-quote,此時引用嵌套層次減1。
為保證完備,還有一個no-open-quote關(guān)鍵字,其效果與no-close-quote對稱。這個關(guān)鍵字會讓引用嵌套層次增1,但不生成符號。
當(dāng)前文章標(biāo)題:網(wǎng)頁設(shè)計中的生成引號
當(dāng)前URL:http://www.gtalker.cn/news/wzzz/generate-quotes.html