본 사이트는 여러분의 사용자 경험을 개선하기 위해 유지 보수를 진행하는 동안 기능이 제한됩니다. 도움말로 문제가 해결되지 않고 질문을 하고 싶다면 Twitter의 @FirefoxSupport 및 Reddit의 /r/firefox 채널을 활용하세요.

Mozilla 도움말 검색

고객 지원 사기를 피하세요. 저희는 여러분께 절대로 전화를 걸거나 문자를 보내거나 개인 정보를 공유하도록 요청하지 않습니다. "악용 사례 신고"옵션을 사용하여 의심스러운 활동을 신고해 주세요.

자세히 살펴보기

Rendering bug - Nested HREF tags created at runtime?

  • 1 답장
  • 15 이 문제를 만남
  • 23 보기
  • 최종 답변자: 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?

모든 댓글 (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.