Join the AMA (Ask Me Anything) with the Firefox leadership team to celebrate Firefox 20th anniversary and discuss Firefox’s future on Mozilla Connect. Mark your calendar on Thursday, November 14, 18:00 - 20:00 UTC!

Támogatás keresése

Kerülje el a támogatási csalásokat. Sosem kérjük arra, hogy hívjon fel egy telefonszámot vagy osszon meg személyes információkat. Jelentse a gyanús tevékenységeket a „Visszaélés bejelentése” lehetőséggel.

További tudnivalók

A témacsoportot lezárták és archiválták. Tegyen fel új kérdést, ha segítségre van szüksége.

Rendering bug - Nested HREF tags created at runtime?

  • 1 válasz
  • 15 embernek van ilyen problémája
  • 23 megtekintés
  • Utolsó üzenet ettől: bmoshe

more options

Some code is not rendered correctly at runtime - Firefox creates additional code at runtime which is not present in the source HTML.

A series of A HREF tags are added to code which is nested within a single A HREF tag in the source. It also adds _moz-rs-heading="" within the A, before the HREF property.

It only happens in Windows Firefox (not OS X) and only to a single item in a page - the item affected varies.

If you refresh the page a few times, sometimes it corrects itself.

Doesn't happen in any other browser.

This screenshot (with Firebug enabled) shows the rendering error and the code added at runtime.

Any explanation?

[http://www.rational-systems.net/files/eum/devweb/index.html Some code] is not rendered correctly at runtime - Firefox creates additional code at runtime which is not present in the source HTML. A series of A HREF tags are added to code which is nested within a single A HREF tag in the source. It also adds _moz-rs-heading="" within the A, before the HREF property. It only happens in Windows Firefox (not OS X) and only to a single item in a page - the item affected varies. If you refresh the page a few times, sometimes it corrects itself. Doesn't happen in any other browser. [http://www.rational-systems.net/files/eum/devweb/_notes/scr_web30_bug_moz_article_render.jpg This screenshot] (with Firebug enabled) shows the rendering error and the code added at runtime. Any explanation?

Összes válasz (1)

more options

The explanation will no longer be relevant with Firefox 4 because of the HTML5 support

I'm being here a bit inaccurate in favor of simplifying things.

In HTML, every element is either inline or block, where block elements contain inline elements (e.g., form contains paragraphs). In HTML4, a elements (href) cannot be used as blocks because they were defined as inline (bad judgement call of those W3 guys back at the early days of the Internet). Browsers tend to fix that mistake for you, and my guess is that Firefox chooses its fixing method, based on performance issues (that is, you don't get that problem when making a few such mistakes).

This will no longer be relevant with HTML5 due to a redefinition of the a element (finally). If you want to support HTML4 browsers, you should not have div, h#, table, etc... inside an a element.