Подтвердить что ты не робот

Какие теги 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>, но до сих пор я не нашел ссылок на него.

4b9b3361

Ответ 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>