HTML – унікальна концепція в програмуванні. До Інтернету програмування було локальним. З появою локальних мереж воно стало багатокористувацьким і розподіленим, але це не було настільки кардинальним явищем, як ідея гіпертексту та її стрімкий розвиток.
Особливості спецсимволов і гіпертексту
До інтернет-програмування все було строго. Є дані і є код, який їх обробляє. Є коментарі, в яких не може бути ніякого коду.
Класичне програмування допускала тільки один виняток: повернення каретки (переведення рядка, табуляцію та інші «невидимі символи, але правильніше – дії. Це ще не HTML-символи, а тільки коди, що мають спеціальні символьні позначення. Під спеціальними символами розумілося те, що не має місця в наборах «видимих» знаків, цифр і букв національних алфавітів.
Коментарі досить швидко взяли стандартну форму:
- // – і все до кінця однієї рядка – це НЕ КОД;
- /* … будь-який текст … */ – тут між «/*» і «*/» може бути скільки завгодно рядків будь-якого тексту.
В коментарях ніколи не було ніякого коду, ніяких установок, ніяких доповнень до коду програми. Коментарі будь-яку мову програмування просто пропускав. Гіпертекст пішов далі (або це зробив IE за ініціативи Microsoft?). По-перше, тут коментар позначається:
- «<!–» – початок;
- «–>» – кінець, краще писати «//–>».
По-друге, коментар тепер може бути умовною. Саме по собі призначення коментарю іншого сенсу, ніж «пояснення з даних і коду алгоритму …» – нонсенс.
В даному прикладі «коментарі», виділені малиновим фоном, гарантують фатальну помилку HTML-сторінки.
Звичайні та спеціальні символи HTML
Коди символів мають значення. Це зовсім інше значення, ніж знак, цифра або літера.
Наприклад, символ «<» – це початок тега і це не завжди безпечно для будь-якої веб-сторінки: браузер працює з тегами, і цим все сказано! Символ «<» або HTML символ «<» – зовсім різні речі. А ось «символ» < – це завжди і скрізь знак менше, кутова дужка або інший сенс, який людина звично вкладає в це накреслення.
Звичайні символи в мові гіпертексту отримують подвійне значення:
- вони залишаються звичними і затребуваними;
- деякі символи набувають статус спеціальних.
Спеціальні HTML-символи вимагають до себе особливого ставлення. Наприклад, попередній зворотний слеш “”, екранування, перетворення в цифровий код або мнемонічне позначення. Для рядка браузера всі букви кирилиці – це «спецсимволи».
Можна відписати проблему кодування символів на початок комп’ютерної ери, коли восьмибитовая таблиця вміщувала в себе тільки знаки, цифри, латиницю та національний алфавіт (наприклад, кирилицю). Інші символи були спеціальними, мали мнемонічні зображення і використовувалися для дій (управління принтером, портом, внутрішніми або зовнішніми пристроями). Але початок комп’ютерної ери не при чому, проблема утворилася зовсім в іншому місці і в іншому сенсі.
Гіпертекст і кодування
Немає жодних сумнівів, що HTML і символи – це завдання про те, як символами описати інші символи. Природно, доведеться визнати частина символів спеціальними та використовувати їх для опису самих себе та інших символів. Незважаючи на відверті ляпи з коментарями, гіпертекст – об’єктивний результат розвитку інформаційних технологій і блискуче рішення проблеми спеціальних символів.
В Інтернеті спецсимволам приділено так багато уваги, що проблема кодування веб-сторінки – це знання та вміння розробника. Якщо спеціальні символи HTML розробник використовує правильно, сайт буде працювати бездоганно і стабільно.
Кожен символ має мнемонічне зображення, десятковий і шістнадцятковий код. У різних умовах застосування допустиме використання:
- будь-якого з цих варіантів;
- тільки одного.
Далеко не завжди і не кожен браузер повідомляє про помилковому використанні спеціального символу і демонстративно йде в себе, пред’являючи розробнику біле вікно. При фактичному наявності знань і умінь у розробника проблем в програмуванні не буде ніколи.
CSS, XML, HTML і символи – це одна струнка система, необхідно просто трансформувати її логіку в потрібний комплекс знань і умінь. Наприклад, у коді сторінки ‘«’ – це ‘«’, але в правилі content CSS – це ‘