Какие теги HTML5 более подходят для денег?
Если вам нужно правильно выбрать один из этих тегов HTML5, чтобы представить цену, сумму денег или остаток на счете (например, 3/9/2012 - Income: 1.200,00 €
или item #314159 - price: $ 31,99
), то
- какой тег вы бы выбрали для суммы и почему?
- Если валюта также будет упакована в свой собственный тег или нет?
Мне бы очень хотелось избежать создания общего встроенного элемента типа <span class="income">1.200,00 €</span>
или <span class="price">$ 31,99</span>
, но до сих пор я не нашел ссылок на него.
Ответы
Ответ 1
спецификация HTML для var:
Элемент var представляет переменную. Это может быть переменная в математическом выражении или контексте программирования, идентификатор, представляющий константу, параметр функции или просто термин, используемый в качестве заполнителя в прозе.
Для меня это означает, что <var>
не подходит для цен в ваших примерах. Это зависит от того, что вы пытаетесь выполнить, но, похоже, ваши варианты:
- Используйте микроданные (ref), например Schema.orgs
offer
лексика для цены на продукцию
- Используйте
<b>
, если вы хотите обратить внимание на цену, не указав ее более важную (ref)
- Используйте
<strong>
, если цена важна, например общая цена детализированной квитанции
- Используйте
<span>
с классом, если вам нужен элемент для стиля цены по-разному, но <b>
и <strong>
не подходят
- Если ничего выше не подходит, и вы не хотите подстраивать цену, не делайте ничего
Из приведенных здесь примеров, похоже, не нужно указывать цены. Если примеры из таблицы отображают финансовую информацию, убедитесь, что они находятся в столбце под заголовком <th scope="col">Income</th>
или <th scope="col">Price</th>
соответственно для доступности.
Надеюсь, что это поможет!
Ответ 2
Глядя на спецификации HTML5, довольно ясно, что цена не считается семантической сущностью. И я согласен. Подумайте об этом так:
Если бы были семантические элементы, это было бы результатом
<p>
I have 4 apples, 2 oranges and <money>5 <currency>dollars</currency></money>.
</p>
Что это за 5 долларов отличается от 2 апельсинов? Следует ли добавить тег <fruit>
?
какой тег вы бы выбрали для суммы и почему?
A span
с class
, если вы хотите добавить некоторый CSS.
Потому что никто не очень заботится о семантике. Приятно иметь, но на самом деле все, что имеет значение, - это стиль.
Валюта также должна быть упакована в свой собственный тег или нет?
Определенно нет.
Мне бы очень хотелось избежать создания встроенного элемента
Почему?
Вы можете использовать <i>
, если хотите выразить "особый характер денег".
Элемент я представляет диапазон текста в альтернативном голосе или настроении или иным образом компенсируется нормальной прозой способом, показывающим другое качество текста,...
http://dev.w3.org/html5/spec/the-i-element.html
Ответ 3
Как насчет <data>
?
<p>The price is <data class="money" value="100.00">$100</data>.</p>
В соответствии с спецификацией HTML5:
Элемент data
представляет его содержимое вместе с машиночитаемой формой этого содержимого в атрибуте value
.
В сочетании с микроформатами или микроданными элемент служит для обеспечения как машиночитаемого значения для целей процессоров данных, так и удобочитаемого значения для целей рендеринга в веб-браузере. В этом случае формат, который будет использоваться в атрибуте value, определяется используемыми микроформатами или лексикой микроданных.
В этом случае вы также можете использовать microdata, чтобы добавить дополнительную информацию о типе валюты и т.д.
Ответ 4
Я не вижу ничего более семантического, чем var
:
<var>1.200,00 <abbr title="EUR">€</abbr></var>
Ответ 5
Я бы использовал список определений здесь.
Элемент HTML (или элемент списка описания HTML) содержит список пар терминов и описаний. Общее использование этого элемента должны выполнять глоссарий или отображать метаданные (список пары ключ-значение).
<dl>
<dt>Income:</dt>
<dd>1.200,00 €</dd>
<dt>Price:</dt>
<dd>$31,99</dd>
</dl>
Ответ 6
Используйте тег var. Описывается как: "Переменная или пользовательский текст"
<var> </var>