2007-01-04

更改 HTML 首頁檔頭資訊 (head-content)

在 HTML 檔裡面大部分的標籤,都是用來格式化顯示在頁面上的內容,但是有些資訊,也許和網站或檔案本身有關,並不一定會都顯示在畫面上,針對這些 metadata 的內容,通常會被塞在 <body> 標籤的前面,或是塞在 <head> </head> 標籤的裡面,這些通稱它們叫檔頭資訊(不是"擋頭")。這些資訊早期只有註記的功能,像是該網頁檔案是那個 HTML 編輯器產生的、作者是誰,後來,配合瀏覽器的支援,這些資訊對讀者瀏覽這些檔案的時候就會有不同和功能,最常見的(尤其是中文環境),就是該文件的「預設編碼方式」。怎麼讓讀者的瀏覽器知道該文件最好用哪種編碼方式來開呢?只要在「檔頭區」<head> 標籤內加入下面這一行:

<meta content='text/html; charset=UTF-8' http-equiv='Content-Type'/>

這樣人家就知道該文件預設編碼是用 UTF-8 Unicode 的方式了。除此之外,其實還有很多類似的資訊可以調整。如果是用 Blogger.com,其實有預設的檔頭資訊,可以找一下樣版文件裡有一行,藏在 <head> 裡面:

<b:include data='blog' name='all-head-content'/>

表示的是 Blogger 統一制訂的一些檔頭內容,如果檢視 Blog 首頁的原始碼,就可以看到上面那行展開以後的相對應標籤。你可以移除上面這一行,只把有需要的內容留下來,也可以在上面那一行的後面,或是 <title> 的前面,自己加入想使用的 head-content,端看個人需求。我分析了一下預設檔頭有的內容,主要有編碼、版權 (meta content) 和 Feed URL (link rel),既然沒有必要我就不動它。之前我有替這裡的 Blog 燒了一個 FeedBurner 的 Feed URL,那是一定要加進來的(有些 RSS Reader 會透過這項資訊去找 Feed URL),所以加了下面這一行:

<link rel='alternate' href='你的FEED URL' title='訂閱 Blog' type='application/rss+xml'/>

嗯!這樣像 Blogline 這類 Reader 從首頁分析就可以找到我的 Feed 資訊。另外,有注意到在瀏覽某些網站,或是把網站加入書籤的時候,這些網站都有它們自己的圖示?是的,這種首頁資訊也是宣告在檔頭裡,只要加下面這一行在你的樣版或首頁裡,人家看你的網站時,不管用什麼瀏覽器或想加入書籤還是我的最愛,都會看到你專屬的「書籤圖示」(favorite icon):

<link rel='shortcut icon' href='圖示檔連結位置'/>

預設的檔名是 favicon.ico,檔案格式一定要是 windows icon 的圖示檔(.ico),而大小標準是 16x16,如果你有一般圖檔 (jpg, gif or png),除了用繪圖軟體轉檔,也可以利用這個網站的服務(favicon from pic)來產生。不過玩 .ico 會發現:背景沒有透明、色盤顏色變少!如果你對圖示的要求比較高,甚至,還想搞動態 gif 來做書籤圖示,上面的語法就不適用囉!舉例來說,像我想用有透明背景的 .png 當作我的書籤圖示,那我可以使用下面這一行:

<link rel='icon' href='PNG圖示檔的連結位置' type='image/png'/>

如果是 gif 就把上面那一行 png 字樣改成 gif 就行了。(現在應該有看到我的書籤圖示吧!長這個樣子:)當然,如果你有自己的動態 gif 圖示,這個方法也可以讓你有動態的書籤圖示!如果還想知道有什麼能修改的檔頭資訊(其他的用處比較不大),也可以看下面的參考文章。

註:為了兼顧相容性,我的書籤圖示以上兩行都有加,因此分別有兩個檔案(favicon.ico & favicon.png)。

參考文章:
做個會跳會動的FavIcon玩玩吧!
自訂網址列圖示﹝FavIcon﹞
logger beta:头信息优化

回應: 2

Gregory 提到...

對於設置頁面預設編碼的那一項 meta,最好是能夠放在 title 標簽之前。之前發現,儅頁面預設編碼是 UTF-8 而 title 中剛好又有中文的時候,網頁在某些瀏覽器下有時候會顯示成空白。

Abin 提到...

嗯!您說的有道理喔!
標題 title 如果是中文,meta 標籤又在 title 後面的話,不是 title 會出問題,就是內文編碼會出狀況
所以這些檔頭資訊,最好還是放在 head 起始標籤後,title 起始標籤前卡保險

張貼留言

歡迎留言或發表意見,不過要理性不做人身攻擊。匿名的朋友得到回應的速度會比較慢喔~
發問相關的禮貌和規矩請先參考這篇文章,不當留言、和本文無關的回應可能會被直接刪除無視喔!