em 和strong 的差別,可以從三個層次來談。
首先看HTML 4.01 中的說明:
EM: Indicates emphasis.
STRONG: Indicates stronger emphasis.
em 表示強調,strong 表示更強烈的強調。言簡意賅,表明了em 和strong 的命名來歷。並且在瀏覽器中,em 預設以斜體表示,strong 以粗體表示。這是第一層次的差別。
第二個層次上,在Emphasis in context versus overall highlighting 和em vs. strong 這兩篇文章中,做了很好的總結:
em is for local emphasis. You see? Local emphasis. If you would emphasize a word in speech, use em.
strong is for global highlighting. When somebody looks at your document, at a glance, certain words and phrases should jump out. These are the words and phrases that make up the gist of the content — the highlights.
em 用來局部強調,strong 是全局強調。從視覺上考慮,em 的強調是有順序的,閱讀到某處時,才會注意到。 strong 的強調則是一種隨意無順序的,看見某文時,立刻就凸顯出來的關鍵字句。斜體和粗體剛好滿足了這兩種視覺效果,因此也就成了em 和strong 的預設樣式。
感覺上面已經解釋得很清楚了?我們再來看看第三個層次的差異。 HTML5 草稿中做了詳盡解釋:
The em element represents stress emphasis of its contents. The placement of emphasis changes the meaning of the sentence.
The strong element represents strong importance for its contents. Changing the importance of a piece of text with the strong element does not change the meaning of the sentence.
em 表示內容的重點(stress emphasis),strong 表示內容的重要性(strong importance),strong 不會改變所在句子的語意,em 則會改變所在句子的語意。並且舉了一個非常好的例子:
<p><em>Cats</em> are cute animals.</p>
強調貓,討論的是哪一種動物聰明可愛。
<p>Cats <em>are</em> cute animals.</p>
強調是,討論的是貓是不是聰明可愛。
<p>Cats are <em>cute</em> animals.</p>
強調聰明可愛,討論的是貓咪究竟是聰明可愛呢還是愚蠢討厭。
<p><strong>Warning.</strong> This dungeon is dangerous.
<strong>Avoid the ducks.</strong> Take any gold you find.
<strong><strong>Do not take any of the diamonds</strong>,
they are explosive and <strong>will destroy anything within
ten meters.</strong></strong> You have been warned.</p>
strong 表示的是重要性上的強調,不會造成句子意思的改變。最後注意em 和strong 都可以有多重,例如可以用兩個strong 來表示內容很重要。
可以看出,第二層次所說的局部強調和全局強調是不夠精確的。 em 和strong 區別的玄妙處,在HTML5 草案裡才得到淋漓盡致的解釋。推薦大家有時間的時候,仔細閱讀HTML5 草稿。有很多元素的語義,都闡釋得非常清楚,對於我們如何在最恰當的地方使用最恰當的標籤,非常有價值。
最後,在前端與民工一文的回覆中,以及收到的郵件裡,很遺憾的沒有發現有誰知道第三個層次上的差異。因此準備好的禮物(我還真準備了10份),很落寞的發不出去了。不過這篇文章只是個引子,接下來準備用一系列文章來探討HTML中元素的語意。禮物的承諾繼續有效,留給下一個主題:
請闡述dl的語義,並列舉至少5種使用場景。
可以查閱資料,將結果貼在回覆裡,或郵件寄給我都可以,禮物有限,前10個答對的必送。
補充:和一些朋友又討論了下,最後我的看法是:
em 是句意強調,加與不加會引起語意變化。
strong 是重要性強調,和局部還是全局無關,局部強調用strong也可以,strong強調的是重要性,不會改變句意。