Why does the Google homepage use deprecated HTML (ie. is not valid HTML5)?

HtmlValidationGoogle Search

Html Problem Overview


I was looking at the www.google.com in Firebug and noticed something odd: The Google logo is centered using a center tag.

So I went and checked the page with the W3C validator and it found 48 errors. Now, I know there are times when you can't make a page valid, especially when we're talking about something like www.google.com and you want it to be as small as possible, but can someone please explain why they use the center tag?

Html Solutions


Solution 1 - Html

I attended a panel at SXSW a few years ago called "F*ck Standards" which was all about breaking from standards when it makes sense. There was a Google engineer on the panel who talked about the Google home page failing validation, using deprecated tags, etc. He said it was all about performance. He specifically mentioned layout rendering with tables beating divs and CSS in this case. As long as the page worked for their users, they favored performance over standards.

This is a very simple page with high traffic so it makes sense. I imagine if you're building a complex app that this approach might not scale well.

From the horse's mouth.

Solution 2 - Html

Because it's just the easiest, most concise way to get the job done. <center> is deprecated, for sure, but as long as it's still supported, you're likely to still see them using it.

Solution 3 - Html

Shorter than margin:0 auto. Quicker to parse. It is valid HTML4. No external dependencies, so less HTTP requests.

Solution 4 - Html

Usability is NOT validity.

Google Search's biggest achievement has been to build a site which is easy to use, and can be widely used. Now, if Google achieved this with a page which does not validate, well, there's a lesson there to learn.

Solution 5 - Html

I think a better question to ask would be "why would Google make it validate if it works fine?" It makes no difference to the user.

Solution 6 - Html

There has been speculation and discussion about whether this is intentional; the basic test carried out in the first link does result in a smaller page, and even gzipped, through millions of page views it theoretically stacks up. I doubt that's the reason though: it was created, tested on many browsers at the time, it worked, and continues to work.

Solution 7 - Html

Google's breaks validation in many ways on their home page. The very likely real reason - they are all about speed and bandwidth costs. Look at the size of the home page HTML particularly after Gzip is applied at the packet level. They are clearly trying to avoid packet fragmentation (which will mean more bandwidth) and willing to do whatever it takes to get it (identifier shortening, quote removal, deprecated tags, white space removal, etc.

If you look at this just as a validity question, fine but they break the rules on purpose if you don't assume this of course you may jump to a negative conclusion. BTW you can further optimize their pages both in positive and negative manners but why once inside the typical packet size it is somewhat pointless.

Solution 8 - Html

They also use other deprecated presentational tags like font and u. My guess is it makes the page quicker to load then using an external stylesheet and allows it to work on more platforms.

Solution 9 - Html

It's deprecated, sure, but I think simplicity is the answer to your question.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionAdrian MesterView Question on Stackoverflow
Solution 1 - HtmlAlex BilsteinView Answer on Stackoverflow
Solution 2 - HtmlChris TonkinsonView Answer on Stackoverflow
Solution 3 - HtmlRich BradshawView Answer on Stackoverflow
Solution 4 - HtmlTFMView Answer on Stackoverflow
Solution 5 - HtmlTom DallingView Answer on Stackoverflow
Solution 6 - HtmlAlistair KnockView Answer on Stackoverflow
Solution 7 - HtmlThomas PowellView Answer on Stackoverflow
Solution 8 - HtmlAndrew MarshView Answer on Stackoverflow
Solution 9 - HtmlnatasView Answer on Stackoverflow