← Back to context

Comment by exikyut

6 years ago

Curious, I installed lynx just to check this out.

I find that I physically cannot navigate to the links in the page except the first few at the top.

But.

On the pages I get, the <a ... href="..." ...>...</a> structure is still 100% intact. It's buried in a table and div soup, but it's there.

So, I argue Lynx parsing bug!

The author of this article would have done well to save and diff the working/not-working HTML they received. :(

Not really a bug more than an outdated browser not being updated for HTML 5.

In HTML 4, <a href="..."><div>...</div></a> is an error and Lynx deals with this by implicitly closing the <a>, turning it into a hidden link (which can still be followed by pressing 'l').

In HTML 5, <a href="..."><div>...</div></a> is valid.

  • Google actually detects the Lynx user agent and sends an HTML 4 page, but apparently this new code wasn't written with that in mind.

I think it is because in html4 the content of an <a> element is restricted to inline elements, whereas in html5 <a> is transparent so its content can be block elements if its parent allows them.

  • That would explain why my blog is terribly broken in lynx. The links from my category pages to article pages are usually done with <a href...><figure>...</figure></a>, which breaks the <a> in lynx.

Why should anyone have to do that? If the site stops working for the user than it no longer works.

Should they be expected to make their own ‘re-Googler’ to fix the page so they can use it again?

  • >Why should anyone have to do that?

    When there's a browser bug, someone needs to debug it and fix the browser. Otherwise the browser bug will remain forever.