2013-04-11 31 views
2

我可以使用HTML5元素来勾勒使用表格进行格式化的“页面”上的代码吗?例如:带HTML5元素的表格式页面?

<section id="posts"> 
    <tr id="posts-title-row"> 
    <header><td id="posts-title"> 
     <h2>Latest Posts</h2> 
    </td></header> 
    </tr> 
    <tr id="posts-row"> 
    <article><td> 
     <p>Maecenas faucibus mollis interdum.</p> 
    </td></article> 
    <article><td> 
     <p>Maecenas faucibus mollis interdum.</p> 
    </td></article> 
    <article><td> 
     <p>Maecenas faucibus mollis interdum.</p> 
    </td></article> 
    </tr> 
</section> 

在一般情况下,我明白,这是形式极其恶劣,但直到电子邮件客户端(ESP的Gmail)的电子邮件的支持CSS3格式,很少有其他的选择,除了使用表格式HTML电子邮件(例如通讯)。但是为了我自己的语义安宁,我想使用<节>,<文章>和<头文件>类型元素来组织事物。

回答

1

如果这是你关心你可以只使用ARIA roles对现有元素<section><article>定义的语义:

<table id="posts" aria-role="region"> 
    <tr id="posts-title-row"> 
     <td id="posts-title" aria-role="banner"> 
      <h2>Latest Posts</h2> 
     </td> 
    </tr> 
    <tr id="posts-row"> 
     <td aria-role="article"> 
      <p> 
       Maecenas faucibus mollis interdum. 
      </p> 
     </td> 
     <td aria-role="article"> 
      <p> 
       Maecenas faucibus mollis interdum. 
      </p> 
     </td> 
     <td aria-role="article"> 
      <p> 
       Maecenas faucibus mollis interdum. 
      </p> 
     </td> 
    </tr> 
</table> 
+0

这是最好的方法。电子邮件与常用标签如跨度,div和p不一致。试图强制语义标签正常工作时,您会遇到麻烦。 – John 2013-04-11 18:00:28

0

你可以,但你有错误的地方的元素。他们需要在<td>之内。您还需要包装整个表的<table>

<section id="posts"> 
    <table> 
     <tr id="posts-title-row"> 
      <td id="posts-title"> 
      <header> 
       <h2>Latest Posts</h2> 
      </header></td> 
     </tr> 
     <tr id="posts-row"> 
      <td> 
      <article> 
       <p> 
        Maecenas faucibus mollis interdum. 
       </p> 
      </article></td> 
      <td> 
      <article> 
       <p> 
        Maecenas faucibus mollis interdum. 
       </p> 
      </article></td> 
      <td> 
      <article> 
       <p> 
        Maecenas faucibus mollis interdum. 
       </p> 
      </article></td> 
     </tr> 
    </table> 
</section> 
+0

呀,表越大,我有< table >标签,但我只复制并粘贴了它的一大块。 – 2013-04-11 16:34:30

0

好了,你可以使用HTML5标签以表格格式,只要你的电子邮件服务接受它。不过,您可以尝试使用CSS(请注意,我没有说过CSS3)为您的页面提供样式。并永远记得内联风格

在2013年使用表格格式就像在马车上工作,但在谈论电子邮件服务时,它仍然是镇警长。

祝你好运!