|
Тема |
Re: Какъв енкодинг да излозвам? - търся съвет [re: DalPortaL] |
|
Автор |
Илия Гopaнoв (БабаИлиица) |
|
Публикувано | 26.09.05 17:54 |
|
|
Ако кодировката ти е правилно посочена навсякъде- няма никакво основание да се притесняваш, че някой няма да ти вижда страницата или ще я вижда на йероглифи, маймуни и т.н.
Като казвам правилно посочена имам предвид едновременно куп фактори:
1. HTTP headers на сървъра! Много важен момент- сървърите на много хостинг провайдъри или сървърски софтуери (по неизвестна за мен глупава причина) са настроени да пускат в HTTP headers настройка за кодировка и тя най-често не е Windows 1251! Ако имаш такъв проблем- най-добре да се бориш с администратора на сървъра. HTTP headers могат да се проверяват с различни инструменти, но не се виждат директно в браузъра. Затова и са често най-коварните, защото не се виждат и хората казват- ето всичко е наред, ама не работи. Да ама не- не всичко е наред! А за съжаление HTTP headers имат приеритет пред <META> зададена кодировка, което противоречи на всички правила в програмирането, че последното дефинирано е валидно! Както и да е...
2. <META> трябва да има таг, който да посочва правилната кодировка. Много често се срещат глупости от сорта, че трябвало в META да пише 1251- НЕ Е ВЯРНО- трябва да пише правилната кодировка, та ако ще тя да е монголска кирилица- за да се изобразява правилно- трябва да е посочена правилно. В твоя случай ако си правиш файловете в 1251- трябва в META да напишеш 1251!
3. <META> тагът да бъде в кода вторият таг- непосредствено след отварящия <HTML> таг и в нинакъв случай след <TITLE> защото това в някои от версиите на MSIE преебава работата... Обяснението на MS е, че браузъра не знае в каква кодировка е заглавието (има известна логика) но резултатът е, че на екрана излиза чисто бяла страница!
Иначе относно разликите- 1251 е значително по-икономична кодировка от UTF- използват се по-малко байтове за едно и също количество текст. Просто Windows 1251 съдържа 256 символа в таблицата на кодировката, а UTF повече. Ако в 1251 един символ се описва с един байт (8 бита- 2^8 = 256), в UTF се описва с от два до шест (може и повече- зависи UTF-8, UTF-16 и т.н.), така че 1251 е по-добро решние, защото таблицата съдържа кирилица и латиница и ако сайта е само на български и английски е напълно достатъчно!
|
| |
|
|
|