prima paginaTutorial softwareCum obține browserul codificarea documentului CSS?
Cum obține browserul codificarea documentului CSS?

Este mult mai complicat pentru browser să obțină codificarea documentului CSS decât să obțină codificarea documentului HTML Charset și documentul CSS pot fi, de asemenea, setate și, în final, un document de codificare implicit.

Influență

Care va fi impactul dacă eroarea de recunoaștere a codificării din documentul CSS este corectă? Caracterele engleze pot fi recunoscute în mod normal, dar caracterele chinezești vor fi afișate ca caractere confuze. Acest lucru se datorează în principal utilizării fonturilor chinezești modificări de font).

În ce ordine obține browserul codificarea documentului CSS?

Conform specificației [1] CSS 2.1, codificarea unui fișier CSS extern ar trebui determinată în funcție de următoarele priorități:

1. Codificarea specificată de parametrul „charset” din câmpul „Content-Type” din antetul răspunsului HTTP.

2. BOM și/sau codificare definite de @charset.

3.<link charset="">sau alte metadate furnizate de mecanismul de conectare (dacă există).

4. Introduceți codificarea determinată în HTML-ul acestui fișier CSS sau în alt fișier CSS (dacă există).

5. Dacă codificarea nu poate fi determinată în pașii de mai sus, se presupune că codificarea este UTF-8.


Trimiteți o metodă pentru a obține codificarea din BOM (C#):

/// <summary> /// 从字节流判断编码(返回null是不能判断出编码) /// </summary> /// <param name="bt">输入字节流</param> /// <returns></returns> internal static string GetEncodingByByte(byte[] bt) { //带BOM的utf-8 var utf8 = new byte[] { 0xEF, 0xBB, 0xBF }; if (bt[0] == utf8[0] && bt[1] == utf8[1] && bt[2] == utf8[2]) { return "utf-8"; } //UTF-32-BE var utf32Be = new byte[] { 0x00, 0x00, 0xFE, 0xFF }; if (bt[0] == utf32Be[0] && bt[1] == utf32Be[1] && bt[2] == utf32Be[2] && bt[3] == utf32Be[3]) { return "utf-32"; } //UTF-32-LE var utf32Le = new byte[] { 0xFF, 0xFE, 0x00, 0x00 }; if (bt[0] == utf32Le[0] && bt[1] == utf32Le[1] && bt[2] == utf32Le[2] && bt[3] == utf32Le[3]) { return "utf-32"; } //UTF-32-2143 var utf322143 = new byte[] { 0x00, 0x00, 0xFF, 0xFE }; if (bt[0] == utf322143[0] && bt[1] == utf322143[1] && bt[2] == utf322143[2] && bt[3] == utf322143[3]) { return "utf-32"; } //UTF-32-3412 var utf323412 = new byte[] { 0xFE, 0xFF, 0x00, 0x00 }; if (bt[0] == utf323412[0] && bt[1] == utf323412[1] && bt[2] == utf323412[2] && bt[3] == utf323412[3]) { return "utf-32"; } //UTF-16-BE var utf16Be = new byte[] { 0xFE, 0xFF }; if (bt[0] == utf16Be[0] && bt[1] == utf16Be[1]) { return "utf-16"; } //UTF-16-LE var utf16Le = new byte[] { 0xFF, 0xFE }; if (bt[0] == utf16Le[0] && bt[1] == utf16Le[1]) { return "utf-16"; } return null; }
Aplicație software: descărcare de șabloane front-end; optimizare SEO; Notă: Acest software nu este un program de hacker și nu poate descărca date de fundal!
Disclaimer: Serviciul este pentru studiu personal, cercetare sau apreciere, precum și în alte scopuri non-comerciale sau non-profit, dar în același timp trebuie să respecte prevederile legii dreptului de autor și ale altor legi relevante și nu trebuie să încalce drepturile legale ale acestui site web și deținătorii de drepturi conexe Riscurile asociate cu utilizarea instrumentelor de pe acest site nu au nicio legătură cu acest software.
Copyright © 2019-2024 Rabbit Software Toate drepturile rezervate Guangdong ICP Nr. 19111427-2
Informații tutorial Manual de utilizare Subiecte de site