Can I use HTML5 elements to outline code on a "page" that uses a table for formatting? For Example:
<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>
In general, I understand that this is extremely poor form, but until email clients (esp. Gmail) support CSS3 formatting of emails, there is little other option, except to use tables to format HTML emails (e.g. newsletters). However for my own semantic peace of mind, I'd like to use < section >, < article > and < header > type elements to organize things.
If it's the semantics you care about you could just use the ARIA roles defined for <section>
and <article>
on the existing elements:
<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>