ön SayfaYazılım eğitimiTarayıcı CSS belgesinin kodlamasını nasıl elde eder?
Tarayıcı CSS belgesinin kodlamasını nasıl elde eder?

Tarayıcının CSS belge kodlamasını elde etmesi, HTML belge kodlamasını elde etmekten çok daha karmaşıktır. Kodlamayı ayarlayabileceği yer, kodlamayı ayarlamak için ResponseHeader'ın İçerik türü alanıdır. karakter kümesi özelliği ve CSS belgesinin kodlaması da ayarlanabilir ve son olarak varsayılan bir kodlama belgesi olabilir.

Etkilemek

CSS belgesi yanlış kodlanırsa etkisi ne olur? İngilizce karakterler normal şekilde tanınabilir, ancak Çince karakterler bozuk karakterler olarak görüntülenecektir. Bunun başlıca nedeni, sayfada görüntülenen Çince yazı tipleri İngilizce yazı tipleridir (içerik hala Çincedir, yani görüntülenenler). yazı tipi değişiklikleri).

Tarayıcı CSS belgesinin kodlamasını hangi sırayla alır?

[1] CSS 2.1 spesifikasyonuna göre, harici bir CSS dosyasının kodlaması aşağıdaki önceliklere göre belirlenmelidir:

1. HTTP yanıt başlığındaki "Content-Type" alanının "charset" parametresi tarafından belirtilen kodlama.

2. BOM ve/veya @charset tarafından tanımlanan kodlama.

3.<link charset="">veya (varsa) bağlantı mekanizması tarafından sağlanan diğer meta veriler.

4. Bu CSS dosyasının HTML'sinde veya başka bir CSS dosyasında (varsa) belirlenen kodlamayı tanıtın.

5. Yukarıdaki adımlarda kodlama belirlenemezse kodlamanın UTF-8 olduğu varsayılır.


Kodlamayı BOM'dan (C#) almak için bir yöntem gönderin:

/// <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; }
Yazılım uygulaması: ön uç şablonun indirilmesi; SEO optimizasyonu; Not: Bu yazılım bir hacker programı değildir ve arka plan verilerini indiremez!
Yasal Uyarı: Hizmet, kişisel çalışma, araştırma veya değerlendirmenin yanı sıra diğer ticari olmayan veya kar amacı gütmeyen amaçlara yöneliktir ancak aynı zamanda telif hakkı yasası ve diğer ilgili yasaların hükümlerine uygun olmalı ve Bu web sitesinin ve ilgili hak sahiplerinin yasal hakları. Bu sitedeki araçların kullanılmasıyla ilgili risklerin bu yazılımla hiçbir ilgisi yoktur.
Telif Hakkı © 2019-2024 Tavşan Yazılım Tüm Hakları Saklıdır Guangdong ICP No. 19111427-2
Öğretici bilgiler Kullanım kılavuzu Web sitesi konuları