Jaki jest najbardziej semantyczny sposób wyświetlania adresu w HTML?

Mam adres, który będzie wyświetlany na stronie, ale nie jest to adres autora strony. Jak należy to zakodować, aby było semantyczne biorąc pod uwagę zalecenie W3C z:

Element adresu może być używany przez autorów do dostarczania informacji kontaktowych do dokumentu lub większej części dokumentu, takiej jak formularz. Element ten często pojawia się na początku lub końcu dokumentu.

Author: Juha Syrjälä, 2010-03-02

4 answers

Możesz użyć mikroformatu hCard

Do opisania swojego adresu. Zaletą mikroformatów jest to, że można ich używać w istniejących dokumentach, aby je wzbogacić.

Oto przykład zaczerpnięty z przykładu z mikroformatów wiki :

<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>
 21
Author: Gumbo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-03-01 22:15:36

W odpowiedzi Gumbo brakuje istotnego składnika. Hcard / vcard jest Wymagane , aby mieć nazwę.

Http://microformats.org/wiki/hcard#Property_List

Również znacznik adresu nie powinien być używany w tym przypadku, ponieważ jest on używany w szczególności w odniesieniu do autora strony, na której jest wyświetlany.

<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>

Większość firm chcących wyświetlić swój adres na swojej stronie internetowej powinna korzystać z następujących:

<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>
 9
Author: Tristanisginger,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-05-30 16:00:43

Możesz użyć RDFa, np:

<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>
 4
Author: Mathieu,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-03-01 22:18:27

Możesz użyć Schema.org słownictwo ' s PostalAddress pozycja dla tego. Można go używać za pomocą mikrodanych , RDFa, lub JSON-LD.

Na przykład, używając 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, to powinno być również ważne z <address> w miejsce <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>
 0
Author: sampablokuper,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-04 17:25:36