2014-10-07 83 views
4

是否可以爲特定div分配字符集?這樣你就可以在頁面上擁有多個字符集。爲特定div設置字符集

我目前通過JS將文本片段導入到我的網站,並且這些文本中的一些需要UTF-8字符集。爲了確保我的文本正確地顯示在每個頁面上(有時是外部網站),我強制將元標記放入所有網站。

是否可以將這個字符集應用於特定的div,span或類似的東西?

回答

4

不,它不是,也完全沒有必要。

<meta>元素聲明一個字符集,或者更好的是,等效的HTTP頭只有幫助瀏覽器正確解釋的HTML文本。一旦瀏覽器完成了,它就會構建一個DOM,並且在此之後,您可能會將文本視爲沒有具體的字符集。對於所有的意圖和目的,文本在DOM中存在爲文本,而不是作爲必須由字符集解碼器解釋的二進制表示。

當您通過Javascript向DOM添加新內容時,應用相同的想法。瀏覽器需要通過HTTP獲取新的內容,而內容的編碼應該用HTTP標頭來表示。瀏覽器可以將文本從特定的編碼轉換爲「DOM文本」,然後再基於此編碼,之後不再是什麼編碼。

因此,您可以完美地混合和匹配不同來源的編碼在同一個頁面/ DOM內的單獨HTTP響應中交付,而不必擔心「全局」編碼。

+1

因此,如果外部文本是在定義字符集的頁面上,應該沒有問題?即使charset與目的地不同? – Squazz 2014-10-07 18:57:05

+1

是的。只要瀏覽器能夠找出每個單獨的片段的字符集,通常通過其HTTP頭,所有這些都是令人討厭的。 – deceze 2014-10-07 19:01:27

0

我想,你不能在一個頁面上使用多字符集,但使用iframe可以解決它的問題。

+0

使用iframe的問題是,我必須在接收端指定並保留一定數量的空間,以便爲iframe留出空間。 如果我能找到發送文本的方式,可以將tat放置在可根據傳送的內容動態改變大小和形狀的div中。 但是,iframe _could_解決問題,它只是爲我提出另一個 – Squazz 2015-07-18 21:58:28