Re: [selectors-api] Best practice in HTML wellformed documents

Diego La Monica (IWA/HWG) wrote:
>  in the section "1.1 Examples" the first example:
> 
>> <table id="score">
>>   <thead>
>>     <tr>
>>       <th>Test
>>       <th>Result
>>   <tfoot>
>>     <tr>
>>       <th>Average
>>       <td>82%
>>   <tbody>
>>     <tr>
>>       <td>A
>>       <td>87%
>>     <tr>
>>       <td>B
>>       <td>78%
>>     <tr>
>>       <td>C
>>       <td>81%
>> </table>
>
> does not produce errors in page interpretation by the browsers but it is not
> correct in wellformed HTML table definition[1].

While XHTML imposes the requirement to explicitly close all elements, it 
is not required in HTML.  In HTML, end tags for some elements, including 
those above, may be omitted.  This is a feature inherited from HTML's 
origin as an application of SGML.

> Is it not better to define the correct markup (like above)?
> 
> <table id="score">
>   <thead>
>     <tr>
>       <th>Test</th>
>       <th>Result</th>
>     </tr>
>   <thead>
>   <tfoot>
>     <tr>
>       <th>Average</th>
>       <td>82%</td>
>     </tr>
>   </tfoot>
>   <tbody>
>     <tr>
>       <td>A</td>
>       <td>87%</td>
>     </tr>
>     <tr>
>       <td>B</td>
>       <td>78%</td>
>     <tr>
>       <td>C</td>
>       <td>81%</td>
>     </tr>
>   </tbody>
> </table>

(Note that your suggested replacement contains an error. You wrote 
<thead> instead of </thead>.)

I decided to omit the end tags from the markup because they were 
unnecessary, it made the example markup smaller and, IMHO, clearer to 
read.  Therefore, since the current example actually is conforming, I 
have not changed it at this time.  Please let me know if you are not 
satisfied with this response.

-- 
Lachlan Hunt - Opera Software
http://lachy.id.au/
http://www.opera.com/

Received on Wednesday, 2 January 2008 16:07:10 UTC