I am not talking about white space in the content, but the code itself.
I had a bunch of validation errors in my HTML and discovered it was because I was missing a space in my markup –
<td class="col_title"colspan="2">
Line 1, Column 80: attributes construct error
Line 1, Column 80: Couldn't find end of Start Tag td line 1
Line 1, Column 80: Opening and ending tag mismatch: tr line 1 and td
Line 1, Column 80: Opening and ending tag mismatch: tbody line 1 and tr
Line 1, Column 80: Opening and ending tag mismatch: table line 1 and tbody
Line 1, Column 80: Opening and ending tag mismatch: div line 1 and table
Line 1, Column 80: Opening and ending tag mismatch: body line 1 and div
Line 1, Column 80: Opening and ending tag mismatch: html line 1 and body
Line 1, Column 80: Extra content at the end of the document
All were highlighting the following line (I was validating local HTML if it makes any difference)
…1.0 Transitional//EN" "http://www.w3.**o**rg/TR/xhtml1/DTD/xhtml1-transitional.dt…
I assumed this wouldn’t matter, but the W3C validator states otherwise. Adding a space between them fixed the errors –
<td class="col_title" colspan="2">
It means you have to be extra careful when writing HTML, and errors like this are a real pain to find. I was looking for missing closed tags within the table.
Does HTML deal with white spaces the same as this for every tag?
As the quotation marks are optional in HTML, the spaces can’t be. The browser would not be able to tell where the value ended and the next attribute started:
Some browsers are more picky about these things than other, and it differs between HTML and XHTML. The validator is a good tool, as it’s stricter about syntax than any browser. If it works there, no browser will have a problem understanding the syntax.