W przypadku niektórych witryn zauważyłem, że menu Firefox „Kodowanie / kodowanie znaków” jest wyłączone, dlaczego?
Czy można to włączyć?
W przypadku niektórych witryn zauważyłem, że menu Firefox „Kodowanie / kodowanie znaków” jest wyłączone, dlaczego?
Czy można to włączyć?
Odpowiedzi:
Jest to spowodowane poprawką dotyczącą błędu 234628 , menu Wyłącz widok> Kodowanie znaków, gdy nie ma efektu / jest niepotrzebne (np. XML) .
W szczególności, jeśli spojrzysz na komentarz nr 63 :
Jeśli chodzi o BOM UTF-8, sensowne jest, aby BOM miał pierwszeństwo przed menu
BOM służy do identyfikacji kolejność bajtów w Unicode zakodowanego dokumentu.
Podane powody można streścić jako:
Gecko (silnik renderujący Firefoksa) nie obsługuje żadnego innego kodowania, które renderowałoby BOM jako prawidłowy start HTML ( <html
lub <!DOCTYPE
itp.).
Inne główne przeglądarki (IE6 +, oparte na WebKit [Chrome itp.]) Robią to samo. Na przykład, jeśli spróbujesz zmienić kodowanie w Chrome, po prostu resetuje się z powrotem do UTF-8.
W przeciwnym razie może dojść do zakłócenia wprowadzania danych.
Podana przykładowa strona zaczyna się od trzech bajtów BOM UTF-8. Możesz to zobaczyć, jeśli zapiszesz stronę i otworzysz plik HTML w edytorze szesnastkowym. LM pozytywnie identyfikuje go jako dokument UTF-8, a otwarcie go w innym kodowaniu nie dałoby poprawnej strony HTML.
Możesz zobaczyć 0xEF
0xBB
0xBF
BOM po lewej stronie, jak opisano na Wikipedii . Po prawej stronie pokazuje, jak to wygląda, gdy jest renderowane jako ANSI / CP1252 .
Jeśli naprawdę chcesz, możesz zapisać plik, zdjąć obraźliwe BOM i otworzyć plik. Lub możesz skonfigurować serwer proxy (Fiddler2 jest do tego dobry), który będzie przechwytywał i modyfikował pliki, zanim dotrą do przeglądarki. Nie są to jednak dobre rozwiązania i mogą powodować kolejne problemy. W przypadku problemów z kodowaniem najlepiej jest skontaktować się z administratorem witryny. W każdym razie powinniśmy wszyscy przejść na Unicode, nie używając starszych i bardziej ograniczonych standardów kodowania.
To prawdopodobnie błąd. Chrom miał podobny problem wiele lat temu.