- Що таке кодування сайту і як вона працює
- Найпоширеніші кодування
- Проблеми з кодуванням не тільки в HTML-сторінці
- META Charset HTML-документа
Наша взаимовыгодная связь https://banwar.org/
Автор статті: Сергій Камінський
При створенні сайту у початківців веб-майстрів часто з'являються питання: в якому кодуванні робити сайт, чим відрізняється UTF-8 від windows-1251 і як її прописувати в META Charset HTML-сторінки сайту. Відповіді на всі ці питання в даній статті.
Що таке кодування сайту і як вона працює
Кодування можна представити у вигляді таблиці, що складається з різних букв, цифр та інших символів зрозумілих людині, які закодовані певним чином. Коли ви відкриваєте текстовий файл, до яких відносяться в тому числі HTML-сторінки, то комп'ютер зчитує з заголовка файлу в якому кодуванні він був збережений і виводить текст у відповідній кодуванні перетворюючи комп'ютерні дані в вид зрозумілий людині зіставляючи ці дані з таблицею кодування. Якщо інформація про кодування із заголовка файлу збігається з кодуванням в якій збережені дані в HTML-сторінці, то користувач бачить звичні йому букви, цифри та інші символи. Якщо ж є розбіжність, то в результаті користувачеві виводиться незрозумілий набір символів, особливо часто це відбувається в старих поштових програмах. Якщо користувач отримав лист з незрозумілими крякозябри, то просто перебираючи різні кодування, зазвичай виходить вгадати і вибрати ту, в якій написано лист, і в результаті незрозумілий набір символів перетворюється в зрозумілий людині текст.
Те ж саме відбувається і з HTML-сторінками сайту. Якщо документ був збережений, наприклад, в кодуванні UTF-8, а в самому документі прописаний META-тег вказує що це кодування windows-1251, то браузер знову ж буде зіставляти збережені в файлі дані з таблицею зазначеної йому кодування і так як символи закодовані по різному, то браузер виведе замість звичного тексту незрозумілий набір символів або ж частина букв може бути в нормальному вигляді, а інші літери або символи можуть виводитися, наприклад, у вигляді знаків питання. Все вище сказане відноситься в тому числі і до відображення імен файлів.
Створюючи новий документ в текстовому редакторі краще відразу переконатися що обрана потрібна кодування. Сучасні редактори дозволяють перетворити текст відкритого документа з одного кодування в іншу, а стандартний Блокнот дозволяє вибрати кодування тільки при збереженні файлу.
Найпоширеніші кодування
З попереднього пункту ви вже знаєте що таке кодування і чому настільки важливо правильно прописати її в коді сторінок сайту. Давайте тепер з'ясуємо яку з безлічі кодувань краще вибрати для майбутнього сайту. Оскільки найпоширенішою і найбільш зрозумілою в освоєнні завжди була операційна система Windows, то більшість веб-розробників створювали HTML-сторінки в кодуванні windows-1251 (ANSI), яка використовувалася за замовчуванням. Але windows-1251 підтримує не дуже велике кількість букв і символів, а розробники хочуть використовувати в своїх текстах різні стрілочки, сердечка, квадратики та інші символи, в тому числі є необхідність поєднувати слова з різних мов в одному документі, тому на зміну їй вже давно прийшла більш розширена UTF-8 і більшість розробників використовують саме це кодування.
Проблеми з кодуванням не тільки в HTML-сторінці
Сайт, незалежно від того чи є він просто набором статичних HTML-документів або складних динамічних скриптів генеруючих сторінки на льоту, розміщується на веб-сервері, який також працює з певним кодуванням. І якщо сервер видає інформацію в одному кодуванні, а ваші сторінки або скрипти збережені в іншому кодуванні, то знову ж таки можуть бути проблеми з відображенням сторінок в браузері користувача. Багато хостинги дозволяють змінювати налаштування і вибрати кодування відповідно до тієї, яка використовується в файлах сайту, через панель управління або ж прописати її в файлі .htaccess, якщо на хостингу використовується популярний веб-сервер Apache.
Практично жоден сучасний сайт не обходиться без використання бази даних MySQL і вона також може стати джерелом проблем з кодуванням. Якщо файли сайту збережені в одному кодуванні, а інформація в базі даних в інший, то на сторінці та частина інформації, яка виводиться з бази даних може відображатися у вигляді все тих же знаків питань або інших незрозумілих символів. Щоб уникнути проблем з кодуванням вона повинна бути однаковою для веб-сервера, бази даних MySQL, в скриптах, в HTML-сторінках сайту і в META-тегу, який прописується в HTML-коді. Якщо є проблеми з відображенням тексту, то перевіряйте на наявність проблеми все вище перераховане.
META Charset HTML-документа
Щоб повідомити браузеру і пошуковим системам в якому кодуванні збережені сторінки сайту в їхньому коді прописується META Charset.
Для кодування windows-1251:
<! DOCTYPE html> <html lang = "ru"> <head> <title> Заголовок сторінки </ title> <meta http-equiv = "content-type" content = "text / html; charset = windows-1251" / > </ head> <body> <p> Текст сторінки </ p> </ body> </ html>
Для кодування UTF-8:
<! DOCTYPE html> <html lang = "ru"> <head> <title> Заголовок сторінки </ title> <meta http-equiv = "content-type" content = "text / html; charset = UTF-8" / > </ head> <body> <p> Текст сторінки </ p> </ body> </ html>
Тепер ви знаєте що таке кодування сайту і де шукати проблеми якщо в якій-небудь частині сайту неправильно відображається текст.
Інші записи по темі в розділі статті по HTML і CSS
Копіювання статті заборонено.