Сite и blockquote: перезагрузка

Стив Фолкнер 11 ноября 2013

Недавно в спецификации HTML было изменено определение элементов <blockquote> и <cite>. В статье рассказывается, что это значит для разработчиков.

Изменения в определении <blockquote>

Элемент <blockquote> представляет контент, являющийся цитатой из другой источника, возможно, включающим упоминание этого источника, которое должно быть размещено внутри элементов <footer> или <cite>, и, возможно, содержащий примечания и сокращения.

Контент внутри элемента <blockquote>, за исключением отсылки к источнику и изменений в тексте, должен быть точной цитатой из другого источника, адрес которого, если таковой имеется, может быть указан в атрибуте cite.

4.51 the Blockquote element, Роберт Бержон и соавторы, 2013

Выделение в цитате авторское, прим. редактора.

Что изменения в <blockquote> значат для разработчиков

Прежде в HTML5 не было принято включать упоминание источника внутрь элемента <blockquote>. Сейчас ситуация изменилась, при условии, что упоминание источника находится внутри элемента <cite> или <footer>. Упоминание источника внутри цитаты — распространенный кейс (данные показывают, что приблизительно в 60% случаев <blockquote> содержит упоминание источника), изменения в спецификации HTML подтверждают это и обеспечивают семантический механизм дифференциации контента цитаты от упоминания ее источника.

Пример использования элементов <footer> и <cite> внутри <blockquote>:

<blockquote>
    <p>
        As my fellow HTML5 Doctor, Oli Studholme has showed,
        people seldom quote exactly – so sacrosanctity of the quoted
        text isn’t a useful ideal – and in print etc, citations almost
        always appear as part of the quotation –
        it’s highly conventional.
    </p>
    <footer>
        — <cite><a href="http://brucelawson.co.uk/2013/on-citing-
        quotations-again/">Bruce Lawson</a></cite>
    </footer>
</blockquote>

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

Редкий случай

Один из аргументов против использования cite и footer внутри blockquote для указания источника цитат состоит в том, что цитируемый контент сам по себе может содержать цитаты и ссылки на источники. Мы можем отбросить этот аргумент по той причине, что такие случаи крайне редки. Отказ от использования <cite> и <footer> ради такого редкого кейса — другой пример теоретической чистоты, которая не будет служить практическим целям.

Но если у вас возник такой случай, в настоящее время спецификация HTML предлагает вам просто закомментировать указание источника в коде цитаты. (Вопрос все еще открыт и этот совет может измениться):

(Добавлено 6.11.13, прим. редактора.) В ответ на отзывы, мы решили изменить наше предложение для спецификации так, чтобы использовать атрибут class (который может использоваться для расширения) элемента <cite> для обозначения, что это часть источника цитаты.

<blockquote>
    <p>
        My favorite book is
        <cite class="from-quote">At Swim-Two-Birds</cite>
    </p>
    <footer>
        — <cite>Mike[tm]Smith</cite>
    </footer>
</blockquote>

Изменения в определении <cite>

Элемент <cite> представляет отсылку к оригинальной работе. Он должен включать название работы или имя автора (персоналию, группу лиц или организацию), или ссылку, которые могут быть в представлены сокращенном виде в соответствии с соглашениями, принятыми при цитировании.

4.51 the Cite element, Роберт Бержон и соавторы, 2013

Что изменения в <cite> значат для разработчиков

Ранее в HTML5 не было принято упоминать автора источника по имени или заключать другую информацию об источнике в элемент <cite>. Применение <cite> было зарезервировано (теоретически) для названия источника. Это было попыткой пересмотреть определение элемента, не менявшееся 14 лет.

Разработчики выступали против изменений в определении:

Присоединяйтесь к кампании гражданского неповиновения против излишне ограничительных, обратно-несовместимых изменений элемента <cite>. Начните использовать HTML5, но начните использовать его разумно. Давайте посмотрим, как плохой совет канет в лету.

Джереми Кит, 2009

Они также приводили абстрактные и реальные примеры указания источника. Сейчас, в результате исследований, анализа данных и дискуссий, разработчики могут вновь использовать <cite> для того, чтобы разными способами сослаться на источник: например, указать название работы, имя автора или ссылку на источник. Мы теряем в теоретической чистоте, но выигрываем в удобстве использования:

Сколько раз в день тег <cite>, содержащий гиперссылку, опубликуется на веб-страницах? По меньшей мере, 70 миллиардов раз, т.е. примерно в 10 ссылках на странице результатов поиска Google.

Одна из причин, почему элемент <cite> теперь можно использовать для гиперссылок (даже не упоминая про идентичную ситуацию с Bing).

Стив Фолкнер, 22 октября 2013

Что вы думаете?

Пожалуйста, прочитайте определения в спецификации HTML 5.1, нам интересно ваше мнение!

Огромное спасибо «доктору» Оли, чье исследование помогло подготовить изменения, произошедшие с элементами <cite> и <blockquote>. И «доктору» Брюсу за то, что настаивал на своем праве цитировать свою маму.

Перевод оригинальной статьи «Cite and blockquote — reloaded» Стива Фолкнера (Steve Faulkner), опубликованной на сайте HTML5Doctor.com.

Перевод выполнили: Наташа Арефьева и Юлия Бухвалова, редактура Вадима Макеева и Ольги Алексашенко

.

Теги: , ,

Комментарии +

  1. Антон 11 ноября 2013 в 15:43

    Использование footer внутри blockquote, как я понимаю, чисто декоративное для дефиса/тире?

    Не проще ли будет опустить footer и сделать дефисотире через before?

  2. Вадим Макеев 12 ноября 2013 в 3:47

    Антон, <footer> используется здесь по смысловому назначению, ровно так, как описано в спецификации:

    A footer typically contains information about its section such as who wrote it, links to related documents, copyright data, and the like

  3. Кирилл 25 ноября 2013 в 17:34

    Сайт неплох, но почему так медленно работает?!
    Страницы грузятся по 5-14 секунд!

Разрешённые HTML-теги: <blockquote>, <a href="…">, <del>, <strong>, <b>, <em>, <i>.
Исходный код блочного уровня для лучшего отображения обрамляйте в элемент <source>.

Перейти к началу