Menu

HTML的文字編排:原始html標籤與W3C推薦的差異

平常我們使用文字編輯軟體,例如Microsoft Office 的Word。裡面會有一些編輯文字的工具列,如下圖:

這個工具列應該很熟悉,許多軟體裡頭編輯文字時都會有類似的工具列,如果把HTML當作WORD看待,會不會比較好理解呢?

第一個選項是樣式,關於CSS的部分挪到後頭再說。

第二個是字體選項,在字體選項當中,無論是HTML裡頭的font或是CSS的font都有一個原則,如果你選了一個別人電腦不一定有的字型,那麼在他人電腦上就不會顯示出來,只會以預設字體為主。接下來是字級大小的設定。根據HTML,有一個標籤叫做FONT。

字體設定 font

W3C官方已將FONT視為非推薦元素,建議改以CSS來做文字設定,那麼在這裡提出來是因為…我想多佔點版幅…不是的。在這裡提出FONT是因為,我正紀錄HTML的學習心得以及許多網頁編輯器產生的原始碼依然存在著FONT。

屬性 屬性值 預設值 說明
size 數值 3 設定文字大小,總共是1~7,七個正整數的級數,數值越大字體越大,是必要屬性。
color 顏色值 #000000 設定文字顏色
face 字型名稱   指定文字字型,可複數設定,字型名稱之間以 , 逗號隔開。
通用屬性:id, class, style, title, dir, lang, xml:lang

範例4-1:使用HTML font的字體大小、顏色、字型

  • 文字級數設定為5,顏色是#ff9900,字型名稱是標楷體<font size=』5〞 color=』#FF9900〞 face=』標楷體』>文字級數設定為5,顏色是#ff9900,字型名稱是標楷體</font>

範例4-2:使用CSS style的字體大小、顏色、字型

  • 文字級數設定為16px,顏色是#ff9900,字型名稱是標楷體<span style=』font-size:16px; color:#FF9900; font-family:』標楷體』;』>文字級數設定為16px,顏色是#ff9900,字型名稱是標楷體</span>

    或是

    <p style=』font-size:16px; color:#FF9900; font-family:』標楷體』;』>文字級數設定為16px,顏色是#ff9900,字型名稱是標楷體</p>

接下來三個選項是:粗體、斜體、底線,我外補充一個刪除線。

 


粗體 / 粗體與強調內容?

粗體字效果有三種方式可以呈現:<b></b>, <strong></strong> 以及CSS的font-weight,其實三種顯示效果都一樣,差別只在於接受度與網頁環境的差異。

粗體字 b (bold text)是W3C非推薦且只有xhtml適用的標籤;

加重強調內容 strong (strong emphasis) 也是W3C非推薦且只有xhtml適用的標籤,但是如果製作無障礙時卻需要以strong取代b 以及CSS的font-weight;根據台灣無障礙網頁官方說法:用B標籤來呈現網頁中重要資訊的設計,這樣的做法只是視覺上會呈現粗體字,而並非解讀 為重要的資訊。B標籤在HTML4.01 中被明確定義為』粗體字』標籤,而STRONG與EM才是強調標籤。使用STRONG標籤的正確示範,除了能顯現粗體的效果也能明確標示出資料的重要性。

CSS font-weight 是指定文字粗細,可以輸入數值 (例如:100, 00, 300 ~~900)也可以輸入字串 (例如:normal正常字體、lighter細字體、bold粗體字、bloder特粗字體)

範例5-1:使用 b (bold text) 的情況下

  • 網頁文字段落中重要訊息的呈現

    <p>網頁文字段落中<b>重要訊息</b>的呈現</p>

範例5-2:使用 strong (strong emphasis)

  • 網頁文字段落中重要訊息的呈現

    <p>網頁文字段落中<strong>重要訊息</strong>的呈現</p>

範例5-3:使用CSS font-weight

  • 網頁文字段落中重要訊息的呈現

    <p>網頁文字段落中<span style=』font-weight:bold;』>重要訊息</span>的呈現</p>


斜體 / 斜體與強調內容?

強調某一段文字的重要性,不管是粗體或是斜體其實都是可以的,純粹是個人喜好或是某些因素來選擇。斜體的設定方式跟粗體幾乎一樣,只在於標籤不同。

斜體字 i (italic text) 如同粗體字的 b 一樣是W3C非推薦且只有xhtml適用的標籤;

強調內容 em (emphasis) 也跟加重強調內容 strong 一樣也是W3C非推薦且只有xhtml適用的標籤,並且在無障礙網頁規範中也是跟上述加重強調內容 strong 的無障礙說明一樣。

CSS 中的斜體效果是 font-style:italic;

範例6-1:使用 i (italic text) 的情況下

  • 網頁文字段落中重要訊息的呈現

    <p>網頁文字段落中<i>重要訊息</i>的呈現</p>

範例6-2:使用 em (emphasis)

  • 網頁文字段落中重要訊息的呈現

    <p>網頁文字段落中<em>重要訊息</em>的呈現</p>

範例6-3:使用CSS font-style

  • 網頁文字段落中重要訊息的呈現

    <p>網頁文字段落中<span style=』font-style:italic;』>重要訊息</span>的呈現</p>


底線

底線的使用如同上述粗體與斜線也是大部分相同。

底線 u ( underlined text ) 是W3C非推薦且只有xhtml適用的標籤;

插入編輯文字 ins ( inserted text ) 是W3C非推薦且只有xhtml適用的標籤;製作無障礙網頁時,請勿使用 <u> ,請改用<ins>。

CSS 的底線寫法為:text-decoration:underline;

範例7-1:使用 u (underlined text) 的情況下

  • 網頁文字段落中重要訊息的呈現

    <p>網頁文字段落中<u>重要訊息</u>的呈現</p>

範例7-2:使用 ins ( inserted text )

  • 網頁文字段落中重要訊息的呈現

    <p>網頁文字段落中<em>重要訊息</em>的呈現</p>

範例7-3:使用CSS text-decoration:underline;

  • 網頁文字段落中重要訊息的呈現

    <p>網頁文字段落中<span style=』text-decoration:underline;』>重要訊息</span>的呈現</p>


刪除線

刪除線常在許多blog看見,可以稱之為不負責任文字(我自己定義的)。設定方式也是跟上述雷同。

刪除線 s ( strike-through text ) …沒錯,跟上面一樣,W3C非推薦且只有xhtml適用的標籤;

刪除編輯文字 del ( delete text ) …還是一樣………..。

CSS的刪除線寫法為 text-decoration:line-through;

範例8-1:使用 s (strike-through text) 的情況下

  • 網頁文字段落中刪除訊息的呈現

    <p>網頁文字段落中<s>刪除訊息</s>的呈現</p>

範例8-2:使用 ins ( inserted text )

  • 網頁文字段落中刪除訊息的呈現

    <p>網頁文字段落中<del>刪除訊息</del>的呈現</p>

範例8-3:使用CSS text-decoration:underline;

  • 網頁文字段落中刪除訊息的呈現

    <p>網頁文字段落中<span style=』text-decoration:line-through;』>刪除訊息</span>的呈現</p>

上述的b, strong, i, em, u, ins, s, del 都有相同的通用屬性:id, class, style, title, dir, lang, xml:lang。

另外ins, del 另外有以下兩種屬性。

屬性 屬性值 預設值 說明
cite 網址   新增內容或原因的網址
datetime 日期時間   備註日期與時間
通用屬性:id, class, style, title, dir, lang, xml:lang

範例9-1:使用 cite, datetime 的 ins 與 del

  • 網頁文字段落中底線訊息的呈現網頁文字段落中刪除訊息的呈現

    設定好之後,可以經由firefox開啟網頁,滑鼠移到以後兩者其中之一按右鍵,點選屬性即可看見以上兩者設定的內容,這個內容主要是說明何時增加說明或刪除。