Кит Джереми - HTML5 для веб-дизайнеров
- Название:HTML5 для веб-дизайнеров
- Автор:
- Жанр:
- Издательство:Манн Иванов Фербер
- Год:2013
- Город:Москва
- ISBN:978-5-91657-596-5
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Кит Джереми - HTML5 для веб-дизайнеров краткое содержание
В HTML5 появилось много интересных тэгов, в том числе поддержка аудио– и видеофайлов. Теперь вам не надо тратить время на установку плагинов для проигрывания музыки или видео – просто воспользуйтесь одним из новых тегов.
Автор убеждает, что можно использовать структурные элементы HTML5 прямо сейчас, например назначить стиль любому элементу, который вы захотите изобрести, или начать использовать доступные вам дополнительные уровни заголовков.
Книга Джереми Кит – настоящая инструкция по использованию HTML5.
HTML5 для веб-дизайнеров - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Минимальная информация, необходимая для того, чтобы браузер точно отобразил страницу в стандартном режиме, – и есть доктайп HTML5. На самом деле это вообще единственная причина включать какой-либо доктайп. HTML-документ без доктайпа HTML5 все равно вполне может быть валидным HTML5.
Будем проще
Доктайп – не единственная вещь, оказавшаяся упрощенной в HTML5.
Если вы хотите особо указать кодировку вашего документа разметки, лучший способ сделать это – проверить, что ваш сервер посылает правильный HTTP-заголовок Content-Type
. Если вы хотите быть вдвойне уверенным, можно также определить кодировку с помощью тега
Вот гораздо более легкий для запоминания способ сделать то же самое в HTML5:
Как и с доктайпом, это упрощенное объявление кодировки содержит минимальный набор символов, который необходим браузерам для правильной интерпретации.
Тег – еще одно место, где мы можем позволить себе немножко сбросить вес. Обычная практика – добавлять к элементам script
атрибут type
со значением "text/javascript"
:
Браузерам этот атрибут не нужен. Они и так примут за данность, что этот скрипт написан на JavaScript, самом популярном языке скриптов в вебе (давайте будем честными – на единственном языке скриптов в вебе):
Точно также не нужно указывать значение type
– "text/css"
каждый раз, когда вы делаете ссылку на CSS-файл:
Можно просто написать:
Синтаксис: размечайте, как хотите
Некоторые языки программирования, например Python, обязывают писать инструкции специфическим образом. Обязательно использовать пробелы для отступа кода – пробелы и переносы строк имеют значение. Другие языки программирования (например, JavaScript) не обращают никакого внимания на форматирование – сколько пробелов в начале строки, совершенно неважно.
Если хотите бесплатно развлечься вечером, соберите в одной комнате несколько программистов и произнесите слова: «табы или пробелы». Ближайшие несколько часов можете греться от жарких споров, которые разгорятся немедленно.
В сердце спора о значимых пробелах лежит фундаментальный философский вопрос: должен ли язык навязывать определенный стиль написания кода – или авторы должны иметь возможность писать в любом стиле, в каком хотят?
Пробелы и переносы строк не важны для разметки. Если вы хотите ставить перенос строки и отступ при каждом вложенном элементе, пожалуйста, но ни браузеры, ни валидаторы этого не требуют. Это не значит, впрочем, что разметку можно писать совсем уж как угодно. Некоторые версии разметки обязывают к более строгому стилю написания, чем другие.
До XHTML 1.0 не имело никакого значения, пишете вы теги в верхнем или нижнем регистре. Не имело значения, закавычивали вы атрибуты или нет. Для некоторых элементов даже не имело значения, ставите ли вы закрывающий тег.
XHTML 1.0 обязывает следовать синтаксису XML. Все теги должны быть написаны в нижнем регистре. Все атрибуты должны быть в кавычках. У всех элементов должен быть закрывающий тег.
В особенном случае самостоятельных элементов, например br
, требование закрывающего тега заменяется требованием закрывающей косой черты:
.
В случае HTML5 все подходит. Прописные, строчные буквы, в кавычках, без кавычек, самозакрывающиеся элементы или нет – решение здесь полностью за вами.
Я использовал доктайп XHTML 1.0 в течение многих лет. Мне нравится, что я должен писать в каком-то одном специфическом стиле, и мне нравится, что валидатор W3C обязывает меня писать в этом стиле. Теперь, когда я использую HTML5, я сам должен обязать себя писать в том стиле, в каком хочу.
Я понимаю, почему некоторым людям не нравится нетребовательность синтаксиса HTML5. Получается, что мы как будто закрываем глаза на годы, за которые накопились передовые практики. Некоторые даже говорят, что нестрогий синтаксис HTML5 поощряет плохую разметку. Я не думаю, что это так, но могу понять, почему это причина для волнения. Случилось то же самое, как если бы язык программирования, который обязывал использовать значимые пробелы и переводы строк, внезапно переключился бы на правила, которые позволили бы делать это не всегда, а с какими-то исключениями.
Лично у меня нет проблем с бессистемностью синтаксиса HTML5. Я смирился с тем, что мне придется самому обязывать себя писать так, как я хочу. Но мне хотелось бы видеть больше инструментов, которые позволили бы мне проверять, насколько моя разметка соответствует тому или иному стилю. В мире программирования такие инструменты называются «линтерами» – программы, которые отмечают ненадежные места в коде. Линтер для разметки отличается от валидатора, который проверяет соответствие разметки доктайпу; но было бы замечательно, если бы оба они могли быть соединены в одну подкачавшуюся и готовую работать машину для линтирования и валидации.
Кто напишет такую программу, заслужит вечное уважение и восхищение веб-разработчиков по всему миру.
Мы так не разговариваем
В предыдущих версиях HTML, когда из спецификации удалялся ранее существовавший элемент или атрибут, этот процесс назывался исключением (deprecation). Веб-разработчикам рекомендовалось не использовать исключенный элемент, не посылать ему открытки на Новый год и вообще не говорить о нем в приличном обществе.
В HTML5 нет исключенных элементов или атрибутов. Но зато есть огромное количество устаревших элементов и атрибутов.
Нет, это не очередной случай выжившей из ума политкорректности. «Устаревший» имеет несколько иное значение, чем «исключенный».
Поскольку HTML5 стремится быть обратно совместимым с существующим контентом, спецификация должна учитывать существующие элементы даже в том случае, если эти элементы больше не входят в HTML5. Это приводит к несколько странной ситуации, когда в спецификации написано «авторы, не используйте этот элемент», а дальше «браузеры, вы должны отображать этот элемент вот так». Если бы элемент был исключен, он вовсе не упоминался бы в спецификации, но поскольку элемент является устаревшим, он включается в спецификацию для браузеров.
Если вы не разрабатываете браузер, вы можете относиться к устаревшим элементам и атрибутам так же, как относились бы к исключенным: не используйте их на веб-страницах, не приглашайте их на коктейль-вечеринки.
Если вы будете настаивать на использовании устаревшего элемента или атрибута, ваш документ станет «несоответствующим». Браузеры будут отображать все как и прежде, но вы, может случиться, заметите, что сайты по соседству поглядывают на вас неодобрительно.
Было приятно познакомиться, чао
Интервал:
Закладка: