我应该使用哪个HTML5标记来标记作者的姓名?

时间:2011-09-03 01:03:55

标签: html5 tags blogs semantic-markup

例如博客文章或文章。

<article>
<h1>header<h1>
<time>09-02-2011</time>
<author>John</author>
My article....
</article>

虽然author标签不存在...那么作者常用的HTML5标签是什么? 感谢。

(如果没有,不应该有吗?)

9 个答案:

答案 0 :(得分:104)

rel="author"<address>都是为了这个目的而设计的。 HTML5都支持这两种方式。该规范告诉我们rel="author"可以在<link> <a><area>元素上使用。 Google还recommends usage。结合使用<address>rel="author"似乎是最佳选择。 HTML5最好能够在<header>中包含<article>标题和署名信息,如下所示:

<article>
    <header>
        <h1 class="headline">Headline</h1>
        <div class="byline">
            <address class="author">By <a rel="author" href="/author/john-doe">John Doe</a></address> 
            on <time pubdate datetime="2011-08-28" title="August 28th, 2011">8/28/11</time>
        </div>
    </header>

    <div class="article-content">
    ...
    </div>
</article>
  • pubdate属性表示这是发布日期。

  • title属性是可选的天桥。

  • 也可以将署名信息包装在<footer>

  • 中的<article>

如果您想添加 hcard microformat ,那么我会这样做:

<article>
    <header>
        <h1 class="headline">Headline</h1>
        <div class="byline vcard">
            <address class="author">By <a rel="author" class="url fn n" href="/author/john-doe">John Doe</a></address> 
            on <time pubdate datetime="2011-08-28" title="August 28th, 2011">on 8/28/11</time>
        </div>
    </header>

    <div class="article-content">
    ...
    </div>
</article>

答案 1 :(得分:44)

HTML5有author link type

<a href="http://johnsplace.com" rel="author">John</a>

这里的弱点是它需要处于某种联系,但如果你有这种联系,那就是long discussion of alternatives here。如果您没有链接,那么只需使用类属性即可:

<span class="author">John</span>

答案 2 :(得分:17)

根据HTML5规范,您可能需要address

  

address元素表示其联系信息   最近的文章或身体元素祖先。

该规范进一步引用了address关于这里的作者

4.4.4以下

  

与文章元素相关的作者信息(q.v.   address element)不适用于嵌套的article元素。

4.4.9以下

  

某个部分的作者或编辑的联系信息   地址元素,可能本身在页脚内。

所有这些似乎使address成为此信息的最佳标记。

也就是说,您也可以address relclass author。{/ p>

<address class="author">Jason Gennaro</address>

了解详情:http://dev.w3.org/html5/spec/sections.html#the-address-element

答案 3 :(得分:9)

Google支持rel =&#34;作者&#34; is deprecated

  

&#34;网络搜索不再支持作者标记。&#34;

使用描述列表(HTML 4.01中的定义列表)元素。

来自HTML5 spec

  

dl元素表示由零个或多个名称 - 值组(描述列表)组成的关联列表。名称 - 值组由一个或多个名称(dt元素)后跟一个或多个值(dd元素)组成,忽略除dt和dd元素之外的任何节点。在单个dl元素中,每个名称的dt元素不应超过一个。

     

名称 - 值组可以是术语和定义,元数据主题和值,问题和答案,或任何其他名称 - 值数据组。

作者和其他文章元信息非常适合这个关键:价值对结构:

  • 谁是作者
  • 发表文章的日期
  • 文章组织的网站结构(类别/标签:字符串/数组)
  • 等。

一个自以为是的例子:

<article>
  <header>
    <h1>Article Title</h1>
    <p class="subtitle">Subtitle</p>
    <dl class="dateline">
      <dt>Author:</dt>
      <dd>Remy Schrader</dd>
      <dt>All posts by author:</dt>
      <dd><a href="http://www.blog.net/authors/remy-schrader/">Link</a></dd>
      <dt>Contact:</dt>
      <dd><a mailto="remy@blog.net"><img src="email-sprite.png"></a></dd>
    </dl>
  </header>
  <section class="content">
    <!-- article content goes here -->
  </section>
</article>

正如您在使用<dl>元素查看文章元信息时所看到的那样,我们可以自由地在{{1}中包含<address><a>甚至<img>标记}和/或<dt>标签根据内容的性质及其预期功能
<dd><dl><dt>代码可以自由地完成工作 - 语义上 - 传达有关父<dd>的信息; <article><a><img>同样可以自由地完成工作 - 再次,在语义上 - 传达有关在何处查找相关内容,非语言视觉演示和联系详细信息的信息权威党派。

答案 4 :(得分:3)

在HTML5中,我们可以使用一些语义标签来帮助组织有关您的内容类型的信息,但是可以与schema.org相关的主题还与之相关。这是Google,Bing和Yahoo的一项举措,旨在帮助搜索引擎通过微数据属性更好地理解网站。 Tu postpodríatener el siguiente Aspecto:

<article itemscope itemtype="http://schema.org/Article">
<header>
  <h1 itemprop="headline">header</h1>
  <time itemprop="dateCreated datePublished">09-02-2011</time>
  <div itemprop="author publisher" itemscope itemtype="http://schema.org/Organization">
    <p>
        <img itemprop="image logo" src="..."/>
        <span itemprop="name">John</span>
    </p>
  </div>
</header>
<section itemprop="articleBody" >
    My article....
    <img itemprop="image" src="..."/>
</section>
</article>

答案 5 :(得分:2)

microdata

怎么样?
<article>
<h1>header<h1>
<time>09-02-2011</time>
<div id="john" itemscope itemtype="http://microformats.org/profile/hcard">
 <h2 itemprop="fn">
  <span itemprop="n" itemscope>
   <span itemprop="given-name">John</span>
  </span>
 </h2>
</div>
My article....
</article>

答案 6 :(得分:2)

您可以使用

<meta name="author" content="John Doe">
根据{{​​3}}标题中的

答案 7 :(得分:1)

如果您包含作者的联系详细信息,则<address>标记是合适的:

但如果它只是作者的名字,那么就没有特定的标签。 HTML与人们的关系并不多。

答案 8 :(得分:0)

您可以为此使用meta标签,如下所示:

<head>
<meta name="author" content="red bot">
</head>