今天有個小朋友問我一個關於html頁面顯示亂碼的問題,特總結並分享。
他的代碼是這樣的
<HTML>
<TITLE>
例 7-1 jspSmartUpload 基本文件上傳
</TITLE>
<BODY BGCOLOR="white">
<HR>
<FORM METHOD="POST" ACTION="/xiazai/jdupload.jsp" ENCTYPE="multipart/form-data">
<INPUT TYPE="FILE" NAME="FILE1" SIZE="50"><BR>
<INPUT TYPE="FILE" NAME="FILE2" SIZE="50"><BR>
<INPUT TYPE="FILE" NAME="FILE3" SIZE="50"><BR>
<BR>
<INPUT TYPE="SUBMIT" VALUE="上傳">
</FORM>
</BODY>
</HTML>
顯示效果如圖
解決辦法,在html頁面中增加一個meta,如下:
<HTML>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
</head>
<TITLE>
例 7-1 jspSmartUpload 基本文件上傳
</TITLE>
<BODY BGCOLOR="white">
<HR>
<FORM METHOD="POST" ACTION="/xiazai/jdupload.jsp" ENCTYPE="multipart/form-data">
<INPUT TYPE="FILE" NAME="FILE1" SIZE="50"><BR>
<INPUT TYPE="FILE" NAME="FILE2" SIZE="50"><BR>
<INPUT TYPE="FILE" NAME="FILE3" SIZE="50"><BR>
<BR>
<INPUT TYPE="SUBMIT" VALUE="上傳">
</FORM>
</BODY>
</HTML>
效果如圖所示
這裏主要講下大家容易忽略的html的meta標籤。
定義和用法
<meta> 元素可提供有關頁面的元信息(meta-information),比如針對搜索引擎和更新頻度的描述和關鍵詞。
<meta> 標籤位於文檔的頭部,不包含任何內容。<meta> 標籤的屬性定義了與文檔相關聯的名稱/值對。
提示和註釋:
註釋:<meta> 標籤永遠位於 head 元素內部。
註釋:元數據總是以名稱/值的形式被成對傳遞的。
meta標籤主要有3個元素:name+content+http-equiv
name 屬性
name 屬性提供了名稱/值對中的名稱。HTML 和 XHTML 標籤都沒有指定任何預先定義的 <meta> 名稱。通常情況下,您可以自由使用對自己和源文檔的讀者來說富有意義的名稱。
"keywords" 是一個經常被用到的名稱。它爲文檔定義了一組關鍵字。某些搜索引擎在遇到這些關鍵字時,會用這些關鍵字對文檔進行分類。
類似這樣的 meta 標籤可能對於進入搜索引擎的索引有幫助:
<meta name="keywords"
content="HTML,ASP,PHP,SQL">
如果沒有提供 name 屬性,那麼名稱/值對中的名稱會採用 http-equiv 屬性的值。
http-equiv 屬性
http-equiv 屬性爲名稱/值對提供了名稱。並指示服務器在發送實際的文檔之前先在要傳送給瀏覽器的 MIME 文檔頭部包含名稱/值對。
當服務器向瀏覽器發送文檔時,會先發送許多名稱/值對。雖然有些服務器會發送許多這種名稱/值對,但是所有服務器都至少要發送一個:content-type:text/html。這將告訴瀏覽器準備接受一個 HTML 文檔。
使用帶有 http-equiv 屬性的 <meta> 標籤時,服務器將把名稱/值對添加到發送給瀏覽器的內容頭部。例如,添加:
<metahttp-equiv="charset"
content="iso-8859-1"> <metahttp-equiv="expires"
content="31 Dec 2008">
這樣發送到瀏覽器的頭部就應該包含:
content-type: text/html charset:iso-8859-1 expires:31 Dec 2008
當然,只有瀏覽器可以接受這些附加的頭部字段,並能以適當的方式使用它們時,這些字段纔有意義。
name屬性主要用來作爲你自定義的內容;而http-equiv則是表示服務器將把名稱/值對添加到發送給瀏覽器的內容頭部。
下面有幾個例子,是W3School中的,大家可以深入參考一下。
http://www.w3school.com.cn/tiy/t.asp?f=html_meta
http://www.w3school.com.cn/tiy/t.asp?f=html_keywords
http://www.w3school.com.cn/tiy/t.asp?f=html_redirect