Как самый семантический способ показать адрес уличного адреса в HTML?

StackOverflow https://stackoverflow.com/questions/2359440

Вопрос

У меня есть адрес, который будет отображаться на веб -странице, но это не адрес автора страницы. Как это должно быть кодировано как семантическое, учитывая рекомендация W3C из:

Элемент адреса может использоваться авторами для предоставления контактной информации для документа или основной части документа, такой как форма. Этот элемент часто появляется в начале или в конце документа.

Это было полезно?

Решение

Вы можете использовать HCARD Microformat Чтобы описать ваш адрес. Преимущество микроформирования заключается в том, что вы можете использовать их в существующих документах для их обогащения.

Вот пример, полученный из примера из Микроформаты Вики:

<address class="vcard">
  <span class="adr">
    <span class="street-address">169 University Avenue</span>
    <span class="locality">Palo Alto</span>,  
    <abbr class="region" title="California">CA</abbr>&nbsp;&nbsp;
    <span class="postal-code">94301</span>
    <span class="country-name">USA</span>
  </span>
</address>

Другие советы

Ответ Gumbo отсутствует жизненно важный ингредиент. Hcard/Vcard требуется иметь имя.

http://microformats.org/wiki/hcard#property_list

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

<div class="vcard">
  <span class="fn">Tristan Ginger</span>
  <span class="adr">
    <span class="street-address">169 University Avenue</span>
    <span class="locality">Palo Alto</span>,  
    <abbr class="region" title="California">CA</abbr>
    <span class="postal-code">94301</span>
    <span class="country-name">USA</span>
  </span>
</div>

Большая часть бизнеса, желающая отобразить свой адрес на своем веб -сайте, должна использовать следующее:

<address class="vcard">
  <span class="fn org">Tristan Ginger Inc</span>
  <span class="adr">
    <span class="street-address">69 University Avenue</span>
    <span class="locality">Great Bookham</span>,  
    <span class="region">Surrey</span>
    <span class="postal-code">KT22 9TQ</span>
    <span class="country-name">UK</span>
  </span>
</address>

вы можете использовать Rdfa, например:

<html
    xmlns="http://www.w3.org/1999/xhtml"
    xmlns:foaf="http://xmlns.com/foaf/0.1/"
    xmlns:address="http://schemas.talis.com/2005/address/schema#"
    xml:lang="fr" lang="fr"
>
 <head>...</head>
 <body>
  <div typeof="foaf:Person" about="http://you.openid.com#me">
   <span id="name" property="foaf:name">First Name, Last Name</span>
   <address property="address:streetAddress">My Street, My City</address>
  </div>
 </body>
</html>

Вы можете использовать словарный запас schema.org Почтовый адрес предмет для этого. Он может быть использован через Микродата, Rdfa, или же JSON-LD.

Например, используя RDFA:

<div vocab="http://schema.org/" typeof="PostalAddress">
 <span property="name">Google Inc.</span>
 P.O. Box<span property="postOfficeBoxNumber">1234</span>
 <span property="addressLocality">Mountain View</span>,
 <span property="addressRegion">CA</span>
 <span property="postalCode">94043</span>
 <span property="addressCountry">United States</span>
</div>

Afaik, это также должно быть действительным с <address> вместо окружающей <div>:

<address vocab="http://schema.org/" typeof="PostalAddress">
 <span property="name">Google Inc.</span>
 P.O. Box<span property="postOfficeBoxNumber">1234</span>
 <span property="addressLocality">Mountain View</span>,
 <span property="addressRegion">CA</span>
 <span property="postalCode">94043</span>
 <span property="addressCountry">United States</span>
</address>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top