title: Empty t:dataTable might be rendering invalid HTML?
body: <p>I use Tomahawk 1.1.8 and I'm trying to build/render a dataTable even if it's empty.
  (rendered="true" as requirement)</p>
  
  <p>Considering our Bean provides an empty list (no rows to be displayed by t:dataTable). Why does Tomahawks' t:dataTable just render following "invalid" HTML even if we have a header providing more than one column:</p>
  
  <pre><code>&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;
  </code></pre>
  
  <p>The JSF Code for the t:dataTable is as usual:</p>
  
  <pre><code>&lt;t:dataTable value="#{bean.list}" var="dataItem"&gt;
    &lt;h:column&gt;
      &lt;f:facet name="header"&gt;
        &lt;h:outputText value="A"/&gt;
      &lt;/f:facet&gt;
      &lt;h:outputText value="#{dataItem.a}" /&gt;
    &lt;/h:column&gt;
    &lt;h:column&gt;
      &lt;f:facet name="header"&gt;
        &lt;h:outputText value="B"/&gt;
      &lt;/f:facet&gt;
      &lt;h:outputText value="#{dataItem.b}" /&gt;
    &lt;/h:column&gt;
    &lt;h:column&gt;
      &lt;f:facet name="header"&gt;
        &lt;h:outputText value="C"/&gt;
      &lt;/f:facet&gt;
      &lt;h:outputText value="#{dataItem.c}" /&gt;
    &lt;/h:column&gt;
  &lt;/t:dataTable&gt;
  </code></pre>
  
  <p>In contrast, JSF h:dataTable renders "better" by just omitting the complete tr tag (=even if I'm not sure if this might be "invalid" HTML, too):</p>
  
  <pre><code>&lt;tbody&gt;&lt;/tbody&gt;
  </code></pre>
  
  <p>My problem with this is the absence of inner table top borders/rules when css "border-collapse:collapse;" is active.</p>
  
  <p>I prepared two HTML examples. One describing the actual fact and the other a possible solution how Tomahawk possibly could fix it:</p>
  
  <pre><code>&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
         "http://www.w3.org/TR/html4/strict.dtd"&gt;
  &lt;html&gt;
  &lt;head&gt;
  &lt;title&gt;less td than th in one row&lt;/title&gt;
  
  &lt;style type="text/css" media="screen"&gt;
  table {
      border-collapse: collapse;
  }
  
  th, td {
      border:1px solid #716F70;
  }
  &lt;/style&gt;
  &lt;/head&gt;
  &lt;body&gt;
  less td than th in one row: borders in FF3.x e.g. are rendered just for two table body cells:
  &lt;br /&gt;
  &lt;table border="1"&gt;
    &lt;tr&gt;
      &lt;th&gt;1&lt;/th&gt;
      &lt;th&gt;2&lt;/th&gt;
      &lt;th&gt;3&lt;/th&gt;
      &lt;th&gt;4&lt;/th&gt;
      &lt;th&gt;5&lt;/th&gt;
      &lt;th&gt;6&lt;/th&gt;
  
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;cell1&lt;/td&gt;
      &lt;td&gt;cell2&lt;/td&gt;
      &lt;td&gt;cell3&lt;/td&gt;
      &lt;td&gt;cell4&lt;/td&gt;
      &lt;td&gt;cell5&lt;/td&gt;
  
      &lt;td&gt;cell6&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;cell1&lt;/td&gt;
      &lt;td/&gt;
    &lt;/tr&gt;
  &lt;/table&gt;
  &lt;/body&gt;
  &lt;/html&gt;
  </code></pre>
  
  <p>...now how it would be better with colspan:</p>
  
  <pre><code>&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
         "http://www.w3.org/TR/html4/strict.dtd"&gt;
  &lt;html&gt;
  &lt;head&gt;
  &lt;title&gt;less td than th in one row: border with colspan ok&lt;/title&gt;
  
  &lt;style type="text/css" media="screen"&gt;
  table {
      border-collapse: collapse;
  }
  
  th, td {
      border:1px solid #716F70;
  }
  &lt;/style&gt;
  &lt;/head&gt;
  &lt;body&gt;
  less td than th in one row: border (top) rendered for complete row, because of &amp;lt;td colspan="5"/&amp;gt; in cell 2 of row 2:
  &lt;br /&gt;
  &lt;table border="1"&gt;
    &lt;tr&gt;
      &lt;th&gt;1&lt;/th&gt;
      &lt;th&gt;2&lt;/th&gt;
      &lt;th&gt;3&lt;/th&gt;
      &lt;th&gt;4&lt;/th&gt;
      &lt;th&gt;5&lt;/th&gt;
      &lt;th&gt;6&lt;/th&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;cell1&lt;/td&gt;
      &lt;td&gt;cell2&lt;/td&gt;
      &lt;td&gt;cell3&lt;/td&gt;
      &lt;td&gt;cell4&lt;/td&gt;
      &lt;td&gt;cell5&lt;/td&gt;
      &lt;td&gt;cell6&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;cell1&lt;/td&gt;
      &lt;td colspan="5"/&gt;
    &lt;/tr&gt;
  &lt;/table&gt;
  &lt;/body&gt;
  &lt;/html&gt;
  </code></pre>
  
  <p>A colspan over all cells of a row might be the best, I think.</p>
  
  <p>Some Browsers like IE or Opera don't mind, however Firefox does and I can take this point, too.</p>
  
  <p>Are there any workarounds or patterns how to get the best result out of this?
  I ask, because I might be missing a technique.</p>
  
  <p>Thanks</p>