У чому полягає ключова відмінність HTML 4 від HTML 5?


145

Які ключові відмінності між чернетками HTML4 та HTML5 ?

Будь ласка, зберігайте відповіді щодо зміненого синтаксису та доданих / видалених html елементів.

Відповіді:


197

HTML5 має кілька цілей, що відрізняють його від HTML4.

Послідовність поводження з підробленими документами

Основна - це послідовне, визначене поводження з помилками . Як відомо, HTML цілеспрямовано підтримує "тег-суп" або можливість записувати неправильний код і виправляти його у дійсний документ. Проблема полягає в тому, що правила цього не списані ніде. Коли новий постачальник веб-переглядачів хоче вийти на ринок, їм просто доведеться перевірити неправильно підроблені документи в різних браузерах (особливо IE) і реверсувати інженеру обробку помилок. Якщо цього не відбувається, багато сторінок не відображаються належним чином (за оцінками, приблизно 90% сторінок у мережі є як мінімум неправильним).

Таким чином, HTML5 намагається виявити та кодифікувати цю обробку помилок, щоб розробники браузерів могли стандартизувати та значно скоротити час та гроші, необхідні для послідовного відображення речей. Крім того, в майбутньому після того, як HTML загине як формат документа, історики, можливо, все ще захочуть прочитати наші документи, і наявність повністю визначеного алгоритму розбору значно допоможе в цьому.

Кращі функції веб-додатків

Вторинна мета HTML5 - розвинути здатність браузера бути платформою додатків, через HTML, CSS та Javascript. Багато елементів були додані безпосередньо до мови, які в даний час (в HTML4) флеш - пам'ять або JS на основі хаков, таких як <canvas>, <video>і <audio>. Корисні речі, такі як Local Storage (доступна у js-браузер вбудована база даних ключових значень, для зберігання інформації за межами того, що можуть містити файли cookie), нові типи введення, такі як дата, на яку браузер може відкрити простий користувальницький інтерфейс (щоб ми не потрібно використовувати наші вибирачі дат для календаря на js), і перевірка форми, що підтримується браузером, зробить розробку веб-додатків набагато простішими для розробників та зробить їх набагато швидшими для користувачів (оскільки багато речей підтримуватимуться на всьому світі, а не зламаний через javascript).

Поліпшена семантика елементів

У HTML5 вживається багато інших менших зусиль, такі як чітко визначені семантичні ролі для існуючих елементів ( <strong>а <em>тепер насправді означають щось інше, і навіть, <b>і <i>мають невиразну семантику, яка повинна добре працювати при розборі застарілих документів) та додавання нових елементів з корисними семантика - <article>, <section>, <header>, <aside>, і <nav>повинен замінити більшість <div>з використовуваних на веб - сторінці, що робить ваші сторінки трохи більше семантичні, але що більш важливо, легше читати . Немає більш болісного сканування, щоб побачити, що </div>саме закриває цей випадковий випадок - натомість ви матимете очевидне </header>, або </article>роблячи структуру свого документа набагато інтуїтивнішою.


14
Будь ласка, зробіть деяку увагу до тегів та пропозицій, відредагувавши відповідь. (Це лише пропозиція, тому що, коли я читав це, мені це набридло.)
Мухаммед Файсал

44

З Вікіпедії :

  • Нові правила розбору, орієнтовані на гнучкий аналіз та сумісність
  • Нові елементи - розділ, відео, хід, нави, метр, час, убік, полотно
  • Нові атрибути введення - дати та час, адреса електронної пошти, URL
  • Нові атрибути - ping, charset, async
  • Глобальні атрибути (які можна застосувати до кожного елемента) - id, tabindex, повторити
  • Випали застарілі елементи - центр, шрифт, страйк

12

Ви хочете перевірити відмінності HTML5 від HTML4: Робоча група W3C Примітка 9 грудня 2014 року на наявність повної розбіжності. Є багато нових елементів та атрибутів елементів. Деякі елементи були вилучені, а інші мають інше смислове значення, ніж раніше.

Також визначені API, такі як використання полотна, щоб допомогти створити веб-додатки наступного покоління та забезпечити стандартизацію реалізації.


11

HTML5 представляє ряд API, які допомагають створювати веб-додатки. Їх можна використовувати разом з новими елементами, що вводяться для додатків:

  • API для відтворення відео та аудіо, який можна використовувати з новими елементами відео та аудіо.
  • API, який включає веб-програми офлайн.
  • API, який дозволяє веб-додатку зареєструватися для певних протоколів або типів носія.
  • API редагування в поєднанні з новим глобальним contenteditableатрибутом.
  • API перетягування в поєднанні з draggableатрибутом.
  • API, який розкриває історію та дозволяє сторінкам додавати до неї, щоб уникнути порушення кнопки "назад".

3

Вас може зацікавити цей список елементів та атрибутів HTML5 .

Також зауважте, що це "HTML 4", а не "HTML4". Дійсно, для HTML 5 використовуються обидва варіанти, але є важлива різниця в значенні. HTML 5 посилається на назву специфікації W3C, тоді як "HTML5" - це тип документа для тих HTML-файлів з text/htmlтипом MIME, які відповідають цій специфікації. Те саме стосується XHTML 5 проти XHTML5.


1
Здається, ви маєте на увазі, що XHTML 5 існує, хоча це не так. Остання рекомендація XHTML для W3C становить 1,1, а 2,0 знаходиться на стадії проектування.
Девід Ріверс

4
@David Rivers: Він існує. XHTML5 - це серіалізація XML HTML5 .
Mathias Bynens

2
@David Rivers: До речі, XHTML 2 вже не знаходиться на стадіях проекту. Її було припинено на користь HTML5 .
Mathias Bynens

Дякую. Я щойно це відкрив і не можу повірити, наскільки я був поза межами циклу. Пройшов чорновий рік!
Девід Ріверс


0

HTML 5 пропонує вам додавати багато коду в семантичний код. Більше того, є вроджене рішення для вставки мультимедійного контенту.

Решта важлива, але саме технічний цукор врятує вас від того ж, що ви робите ті самі речі з клієнтською мовою програмування.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.