我有以下的CSS:內容的CSS「★」顯示爲「â~......」
.rating:not(:checked) > label:before {
content: '★';
}
而且正在呈現的時候,而不是一個★
我看到â˜
。如果我使用Firebug,並將內容更改爲★,則顯示正確。
會發生什麼?我該如何解決它?
感謝
我有以下的CSS:內容的CSS「★」顯示爲「â~......」
.rating:not(:checked) > label:before {
content: '★';
}
而且正在呈現的時候,而不是一個★
我看到â˜
。如果我使用Firebug,並將內容更改爲★,則顯示正確。
會發生什麼?我該如何解決它?
感謝
大概文本編碼(字符集)爲您的CSS和HTML文件不同意。
要設置樣式表的編碼,請使用@charset
;例如:
@charset "UTF-8";
要設置一個HTML網頁的編碼,使用<meta>
標記(在頂部的<head>
部);例如:
<meta http-equiv="Content-type" content="text/html;charset=utf-8">
或HTML 5:
<meta charset="UTF-8">
一個樣式表的@charset
必須同意選擇用於其的HTML頁面的編碼。
原因是BLACK STAR「★」(U + 2605)在包含CSS代碼的源代碼中出現爲UTF-8編碼,但該源被解釋爲ISO-8859-1編碼。修復取決於CSS代碼的位置,服務器軟件等。
請注意,AFAIK http-equiv''標題只有'file://'訪問纔有效; Web服務器提供的實際HTTP頭是「http://」的計數。另外,請注意,對於HTML5,您可以只鍵入:'。 – Phrogz 2012-07-27 05:46:35
編碼不必相同。重要的是編碼是正確申報的。 – 2012-07-27 09:37:36
@Progrog好點,我會將其添加到答案。 – 2012-07-27 23:40:07