The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

CSS 與網頁編碼(Charset Encoding)的關係

我之前曾經發生過一件事,就是明明載入了 CSS 檔,但是所有的樣式都無法套用,怎麼改都沒用,只要把 CSS 複製到原本網頁的 <head> 中就可以運作了,除錯了很久才發現,原來 *.css 檔的檔案編碼必須跟網頁(*.htm, *.aspx)的編碼一致,瀏覽器才會正確的辨識,且不止 *.css 也包括 *.js 與其他動態載入的文字格式的檔案都需要有相同的編碼。

問題發生的原因就在於當初因為要把某的網頁的編碼從 Big5 轉換成 UTF-8,但是 *.css 卻忘了改,其實忘了改也沒關係,主要是我在該 css 檔的最上面還放了幾行註解,註解中用的是「中文」字,我原本想都已經註解掉了,為什麼還會出錯,但就是因為這個中文,將註解最後面的 */ 的星號(*)吃掉了,導致註解沒有結束,而整份文件也都被註解掉了。

所以,下次遇到 CSS 怪怪的時候,先檢查一下你的 css 檔與網頁編碼是否一致吧!