Веб-дизайн

Зачем делать UTF-8 без BOM в Notepad++ если в мета теге указана кодировка utf-8 В чем отличие?

Затем, что веб-серверу глубоко фиолетово, BOM это или, например, изображение - он тупо пересылает побайтно всё содержимое файла. В результате ломается передача заголовков (за подробностями - в интернет: ищи формат http).
Дмитрий Тудоровский
Дмитрий Тудоровский
98 986
Лучший ответ
Здесь важно, что без BOM. Т. к. это лишние символы в начале файла.
Немного не точно все ответили. В метатеге указана кодировка, в которой будет прочитан файл, и поэтому вы сам файл должны так же сохранить в той же кодировке. Иначе браузер белиберду прочитает. В UTF-8 некоторые символы занимают больше байта и если вы не укажете кодировку в метатеге, то браузер посчитает каждый байт за символ, и наоборот, если сохранить не в utf-8, то каждый символ займет 1 байт, а браузер будет пытаться прочесть, как utf-8, и в итоге на странице опять белиберда будет.
Gena Gena
Gena Gena
15 705
А вы знаете зачем вообще нужен был BOM? Просто при передаче текстовых файлов с 16-битными символами "мудрые" люди не смогли договориться, какой из двух последовательно передаваемых байт - младший - первый или второй. Как результат - первые два байта файла кодировки UTF-16 отведены под служебный символ BOM.

UTF-8 подобным эффектом не страдает, поэтому для него BOM не обязателен.
А иногда даже вреден. При наличии BOM для UTF-8 и другой кодировке в meta-теге кому будет верить браузер? Зависит от баузера. Ибо "если на клетке слона прочтёшь надпись «буйвол», не верь глазам своим" - не верить что в клетке слон или что надпись прочитана правильно?
Иван Баруздин
Иван Баруздин
11 112
Вот такая вот фигня. Наверное, приоритет перехватывает изначально созданный документ (например, в ANSI) чем указание браузеру в utf-8
TB
Tolkun Bayarow
314
а почему в бутылку с надписью "фанта" еще и фанту наливают? в чем отличие?
Саша
Саша
290