Нужно ли прописывать все теги HTML5 для других страниц динамического сайта?
Привет!
Делаю сайт с динамическим контентом.
Нужно ли для каждой страницы, например для 'signup.php' (страница с формой регистрации), делать полную HTML5 разметку, типа
Вовсе не нужно. Правильнее сказать - необязательно.
Из обязательных тегов в приведенном каркасе только title и doctype (необязателен тоже. но без него худо будет). Ну и кодировку желательно указывать, хотя тоже обязательным не является.
Сергей: в спецификации актуальной они опциональны, да. Но откройте дебагер и посмотрите на разметку. Расскажите что увидели и объясните, может я не понимаю :)
Николай Каргин: Браузер строит из разметки DOM-дерево. В нем эти узлы должны присутствовать, вот они и добавляются. Опциональные теги могут быть опущены в разметке, но они будут присутствовать в дереве. Это штатное поведение, не ошибка, не исправление ошибок разработчика.
То о чем вы говорите это примерно такое
Разметка невалидная, параграф не может содержать в себе блочные элементы.
<p>
<div></div>
</p>
Браузер попытается исправить ошибку разработчика и отрендерит эту разметку так
<p></p>
<div></div>
<p></p>
Налицо ошибка, это не то что хотел видеть разработчик. И лишний параграф в определенных случаях может доставить проблем.
В нем эти узлы должны присутствовать, вот они и добавляются.
Вот вы себе и противоречите. Движки браузеров работают не так, как вы думаете. Почитайте исходники хромиума на досуге. А еще интересные вещи начинают происходить, если разметка чуть сложнее, чем в примере :)
Про движки. Мне нужно знать как они работают, и уж тем более читать исходники. Я знаю как они должны работать согласно спекам. Этого более чем достаточно. А вот вы какую-то фигню несете.