Чтение онлайн

ЖАНРЫ

HTML5 для веб-дизайнеров
Шрифт:

Элемент video работает примерно так же, как элемент

audio
. У него есть необязательные атрибуты
autoplay
,
loop
и 
preload
. Вы можете указать расположение видеофайла либо через атрибут
src
элемента
video
, либо с помощью элементов source, вложенных внутри открывающих и закрывающих тегов
<video>
. Вы можете разрешить браузеру отобразить пользовательский интерфейс с помощью атрибута
controls
или написать свои собственные управляющие элементы.

Главная разница

между аудио– и видеосодержимым состоит в том, что фильмы по своей природе будут занимать больше места на экране, поэтому, скорее всего, вам стоит определить размеры элемента:

<video src="movie.mp4" controls width="360" height="240">

</video>

Вы можете выбрать подходящее изображение для видеофайла и указать браузеру, что нужно его отобразить, через атрибут poster (рис. 3.07):

<video src="movie.mp4" controls width="360"
height="240" poster="placeholder.jpg">

</video>

Рис. 3.07. Через атрибут poster показывается картинка-заполнитель

Поле битвы конкурирующих видеоформатов «залито кровью» еще сильнее, чем в мире аудио. Из больших игроков нужно назвать MP4 – по уши увязшего в патентах – и Theora Video (здесь все проще). И снова вам нужно будет указать альтернативные форматы и содержимое, которое выводится в том случае, если HTML5 video не поддерживается:

<video controls width="360" height="240"
poster="placeholder.jpg">

<source src="movie.ogv" type="video/ogg">

<source src="movie.mp4" type="video/mp4">

<object type="application/x-shockwave-flash"
width="360" height="240"
data="player.swf?file=movie.mp4">

<param name="movie"
value="player.swf?file=movie.mp4">

<a href="#">Скачать фильм</a>

</object>

</video>

Авторы спецификации HTML5 изначально надеялись установить некий единый формат видео, который бы поддерживали все. К сожалению, производители браузеров не смогли договориться о едином формате.

Нативный режим

Возможность нативного встраивания видео в веб-страницы – пожалуй, самое заманчивое добавление к HTML со времен введения элемента

img
. Большие игроки, как, например Google, не стесняются выражать свой энтузиазм на этот счет. Вы можете взглянуть на то, что они приготовили для YouTube, по адресу: http://youtube.com/html5.

Одной из проблем отображения мультимедиа в плагине является то, что содержимое плагина находится в «песочнице», отдельно от всего остального документа. Нативные мультимедиа-элементы в HTML смогут работать в комплексе с остальными браузерными технологиями – JavaScript и CSS. Элементом

video
можно не только управлять через JavaScript, можно также назначать ему стили (рис. 3.08).

Рис. 3.08. Элемент video с примененными стилями

Попробуйте-ка сделать это с плагином.

Аудио и видео – долгожданные дополнения к HTML5, но веб – не среда вещания, а интерактивная среда. Самый старый и самый мощный способ обеспечивать интерактивность – формы. В главе 4 мы посмотрим на то, какое обновление в HTML5 получили формы.

4. Веб-формы 2.0

Когда в веб-браузерах появился JavaScript, его немедленно стали использовать для двух задач: изменения картинки при наведении мышью и улучшения форм. Когда же в CSS появился псевдокласс

:hover
, веб-разработчикам перестало быть нужным использовать JavaScript для того, чтобы добиться просто изменения картинки при наведении.

И эта картина зачастую повторяется. Если какое-то типовое действие достаточно популярно, практически наверняка развитие будет идти так, что вместо того чтобы писать собственный скрипт, достаточно будет более декларативного решения. Вот почему в CSS3 появляется еще больше возможностей для анимации из числа тех, что раньше требовали JavaScript.

Когда дело касается улучшения форм, у CSS есть ряд ограничений. Здесь в дело вступает HTML5. Следуя той же самой проторенной дорожкой от программного решения к декларативному, спецификация HTML5 вводит много новых улучшений форм.

Эти функции изначально были частью спецификации WHATWG, которая называлась Веб-формы 2.0 и основывалась на уже проделанной работе в W3C. Эта спецификация теперь включена в HTML5.

Placeholder

Вот типичная задача, которая часто используется для поисковых форм и обычно решается написанием скрипта для DOM:

1. Если у поля формы нет значения, вставить туда текст-заполнитель.

2. Когда пользователь перемещает фокус на это поле, убрать текст-заполнитель.

3. Если пользователь выходит из поля и в нем по-прежнему нет значения, снова поставить текст-заполнитель.

Текст-заполнитель обычно показывается шрифтом более светлого цвета, чем шрифт самого значения поля формы. Это реализуется с помощью CSS, JavaScript или обоими этими инструментами вместе.

В документе HTML5 вы можете просто использовать атрибут placeholder (рис. 4.01):

<label for="hobbies">Ваши хобби</label>

<input id="hobbies" name="hobbies" type="text"
placeholder="Стряхивать филинов с деревьев">

Рис. 4.01. «Стряхивать филинов с деревьев» появляется в поле input посредством атрибута placeholder

Атрибут

placeholder
прекрасно работает в браузерах, которые его поддерживают, но, увы, таких браузеров прямо сейчас не так-то много. Вы сами решаете, что вы хотите видеть в других браузерах, которые пока этот атрибут не поддерживают.

Поделиться с друзьями: