ön səhifəProqram təminatı dərsliyiBrauzer CSS sənədinin kodlaşdırılmasını necə əldə edir?
Brauzer CSS sənədinin kodlaşdırılmasını necə əldə edir?

Brauzer üçün HTML sənəd kodlamasını əldə etməkdənsə, CSS sənədinin kodlaşdırılmasını əldə etmək daha mürəkkəbdir charset atributu və CSS sənədi də kodlaşdırma və nəhayət, standart kodlaşdırma sənədi təyin edilə bilər.

Təsir

CSS sənədi səhv kodlaşdırılarsa, bunun təsiri necə olacaq? İngilis simvolları normal olaraq tanınır, lakin Çin simvolları pozulmuş simvollar kimi göstərilir şrift dəyişiklikləri).

Brauzer CSS sənədinin kodlaşdırılmasını hansı ardıcıllıqla əldə edir?

[1] CSS 2.1 spesifikasiyasına uyğun olaraq, xarici CSS faylının kodlaşdırılması aşağıdakı prioritetlərə uyğun olaraq müəyyən edilməlidir:

1. HTTP cavab başlığında "Məzmun növü" sahəsinin "charset" parametri ilə müəyyən edilmiş kodlaşdırma.

2. @charset tərəfindən müəyyən edilmiş BOM və/yaxud kodlaşdırma.

3.<link charset="">və ya əlaqələndirmə mexanizmi tərəfindən təmin edilən digər metadata (əgər varsa).

4. Bu CSS faylının HTML-də və ya başqa bir CSS faylında (əgər varsa) müəyyən edilmiş kodlaşdırmanı təqdim edin.

5. Əgər kodlaşdırmanı yuxarıdakı addımlarla müəyyən etmək mümkün deyilsə, kodlaşdırmanın UTF-8 olduğu güman edilir.


BOM-dan kodlaşdırmanı əldə etmək üçün metod göndərin (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; }
Proqram təminatı: qabaqcıl şablonun yüklənməsi və oflayn internetə baxılması; Qeyd: Bu proqram haker proqramı deyil və fon məlumatlarını endirə bilməz!
İmtina: Xidmət şəxsi araşdırma, araşdırma və ya qiymətləndirmə, eləcə də digər qeyri-kommersiya və ya qeyri-kommersiya məqsədləri üçündür, lakin eyni zamanda müəllif hüquqları qanununun və digər müvafiq qanunların müddəalarına uyğun olmalıdır və bu vebsaytın və əlaqəli hüquq sahiblərinin qanuni hüquqları bu saytda olan alətlərdən istifadə ilə bağlı risklərin bu proqram təminatı ilə heç bir əlaqəsi yoxdur.
Copyright © 2019-2024 Rabbit Software Bütün hüquqlar qorunur Guangdong ICP No 19111427-2
Dərslik məlumatı İstifadəçi kitabçası Veb sayt mövzuları