New Firefox 4 rips apart Calendar-Overview with hoverlinks on datenumbers!

RESOLVED INVALID

Status

()

Core
HTML: Parser
RESOLVED INVALID
7 years ago
7 years ago

People

(Reporter: C.K., Unassigned)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(URL)

Attachments

(1 obsolete attachment)

(Reporter)

Description

7 years ago
User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.2.17) Gecko/20110420 Firefox/3.6.17 GTB7.1
Build Identifier: Firefox 4

Please, I would like to know, why Firefox 4 has changed CSS layout-principles.

Is it possible to use conditional comments like used for IE, to tell Firefox 4 to show the css-layout like Firefox 3?

If you can fix the Problem it would be great. But it sureley will take time, isn't it? So inbetween a Browser-Switch "meta-hack" would be very helpful.

Thank a lot.
Kind regards
Claudia

Reproducible: Always

Comment 1

7 years ago
Created attachment 532619 [details]
testcase

This is a difference in the DOM produced by the HTML parser
(Reporter)

Comment 2

7 years ago
Sorry and what can I do about it?

With Firefox 3.6.17 and previous versions erverything is fine, but with Firefox4 it isn't.

I'm a little bit helpless, I need more detailed explanation/instruction.

Thanks a lot.

Comment 3

7 years ago
Comment on attachment 532619 [details]
testcase

Sorry copy and paste error - although it was probably related to the problem.
Attachment #532619 - Attachment is obsolete: true
> Sorry and what can I do about it?

Use valid markup.  <a> is not allowed inside <a>; the old parser enforced that in some cases but not others, whereas the new one is more consistent about it.

That said, the attached testcase renders the same way in WebKit-based browsers (Safari 5 and Chrome dev) as in Firefox 4 but the original page does NOT.  Looking at the source Gecko is served, it looks like this:

<a class="tooltip" href="javascript:void(0)" >9<span><h1>Veranstaltungen am 09.05.2011</h1><ol><li><a href="aktuelles/termine/2011-01-06-termine/0905-emaseasy-training/" >EMASeasy Training für Berater</a></li></ol></span></a>

Looking at the source Safari is served, it looks like this:

<a class="tooltip" href="javascript:void(0)" >9<table class="item-list"><tr><td><h1>Veranstaltungen am 09.05.2011</h1><ol><li><a href="aktuelles/termine/2011-01-06-termine/0905-emaseasy-training/" >EMASeasy Training für Berater</a></li></ol></td></tr></table></a>

Notice the <table> there instead of the <span> that Gecko is getting.

Simply serving the same markup to Gecko that's served to WebKit here will make things work.
Component: Layout: Tables → HTML: Parser
QA Contact: layout.tables → parser
I guess that's the other thing you can do about it: don't serve different markup to different browsers.
Status: UNCONFIRMED → RESOLVED
Last Resolved: 7 years ago
Resolution: --- → INVALID
(Reporter)

Comment 6

7 years ago
Thanks a lot. 
But this doesn't seem that simple to solve, cause it is an extension for CMS. I don't know, how to rewrite the css in a short time, and what about earlier Firefox-Versions? Privatley I haven't updated yet to Firefox4, cause a lot of Addons are still not compatible. Would the css changes effect those versions negativly or other older browserversions? Is a contitional comment possible to force Firefox 4 the old parser way?

Why did you change the "parser" at all? 
Can you imagin how many websites have such or similar layout problems now, it was years all right, also in safari4, opera? The IE higher 7 had problems with that the whole time, therefor I disabled the datenumber-overview calendar completely. I mean - I'm not a IE-supporter;-)

Please excuse me, I'm not so fast in understanding your descriptions. This is now like horror for me. Additional work.
> how to rewrite the css in a short time

This needs a change to the generated HTML, not to the CSS.

> and what about earlier Firefox-Versions?

I believe the markup this site serves to WebKit will work fine in earlier Firefox versions.

> Is a contitional comment possible to force Firefox 4 the old parser way?

No.

> Why did you change the "parser" at all? 

Because we implemented the HTML parsing algorithm from the HTML5 specification.  Other browsers are implementing it too.  Again, at this point the problem is that we and WebKit are using the same parser but your site is sending us _different_ markup.  Just stop doing that!

> Can you imagin how many websites have such or similar layout problems now

Yes.  Very few.  In particular, sites that don't send different browsers different content generally don't have problems, because the algorithm was carefully designed to be backwards compatible in almost all cases.

>  Additional work.

And I'm sorry about that, but it's work you created for yourself by adding browser sniffing and sending different browsers different content to start with....
(Reporter)

Comment 8

7 years ago
Thanks for your very specific explanation. I see there's no other way ;-).

"but it's work you created for yourself", well that's not true, 'cause as I said, this is the HTML created by an extension.

So - I think this question can be closed.

Kind regards
C.K.
You need to log in before you can comment on or make changes to this bug.