Last Comment Bug 40383 - 0* frame displays as non-zero size in older browsers
: 0* frame displays as non-zero size in older browsers
[nsbeta3+] fix in hand wdormann@cross...
: testcase
Product: Core
Classification: Components
Component: Layout: HTML Frames (show other bugs)
: Trunk
: x86 All
P3 normal (vote)
: M17
Assigned To: Eric Pollmann
: Chris Petersen
: Jet Villegas (:jet)
: 43921 (view as bug list)
Depends on:
  Show dependency treegraph
Reported: 2000-05-23 17:52 PDT by b rees
Modified: 2003-11-29 08:13 PST (History)
1 user (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---

Simplified testcase (282 bytes, text/html)
2000-05-24 21:36 PDT, WD
no flags Details

Description User image b rees 2000-05-23 17:52:27 PDT
For some reason mozilla cannot display this site:  All I
see in the browser is a graphic on the left side which appears to corresond
to only one part of the frame set.
Comment 1 User image WD 2000-05-23 18:29:03 PDT
Confirmed.   Making test case.
Comment 2 User image WD 2000-05-24 21:36:23 PDT
Created attachment 9119 [details]
Simplified testcase
Comment 3 User image WD 2000-05-24 21:38:33 PDT
The above testcase is a simplified version of the frameset in question.    I
think I could have simplified it more, but I'm not sure at what point it stops
being valid syntax.       This case shows 3 frames, 3 picture in Netscape.
Only the first frame/picture is displayed in Mozilla.
Comment 4 User image WD 2000-05-24 21:40:31 PDT
Sorry for spam.  Forgot to reset Keyword.
Comment 5 User image Asa Dotzler [:asa] 2000-05-31 17:05:49 PDT
Comment 6 User image Eric Pollmann 2000-06-07 22:18:40 PDT
Funny, I specifically fixed this type of page not too long ago:

<FRAMESET cols="147,0*" rows="*">

This means "A column of 147 pixels followed by a frame of 0 pixels.", according 
to HTML 4.0 Section 6.6 states:
 3. MultiLength: The value ( %MultiLength; in the DTD) may be a %Length; or a 
    relative length. A relative length has the form "i*", where "i" is an 
    integer. When allotting space among elements competing for that space, user
    agents allot pixel and percentage lengths first, then divide up remaining 
    available space among relative lengths. Each relative length receives a 
    portion of the available space that is proportional to the integer preceding 
    the "*". The value "*" is equivalent to "1*". Thus, if 60 pixels of space
    are available after the user agent allots pixel and percentage space, and
    the competing relative lengths are 1*, 2*, and 3*, the 1* will be alloted 10 
    pixels, the 2* will be alloted 20 pixels, and the 3* will be alloted 30

I can fix this to be backwards compatible in quirks mode, but the page should 
probably be changed to:

<FRAMESET cols="147,*" rows="*">

To achieve the desired effect in standards compliant browsers.
Comment 7 User image Eric Pollmann 2000-06-07 22:32:00 PDT
Nav and IE treat 0* as 1*.  I have a fix in my tree that makes this so iff we 
are in quirks mode.
Comment 8 User image WD 2000-06-27 07:11:04 PDT
*** Bug 43921 has been marked as a duplicate of this bug. ***
Comment 9 User image Eric Pollmann 2000-07-21 19:34:30 PDT
(updating mutiple bugs)

Nominating this bug for beta3 because it is either a crasher or a correctness 
bug and I have a straightforward fix in hand.  This bug fix is small, low risk, 
and can easily be reverted with no side effects.
Comment 10 User image Kevin McCluskey (gone) 2000-08-01 17:35:33 PDT
Marking nsbeta3+
Comment 11 User image Eric Pollmann 2000-08-03 16:59:36 PDT
This fix has been checked in.  Coming up with a test case to assist in
Comment 12 User image Chris Petersen 2000-08-24 19:18:50 PDT
Marking verified in the Aug 24th build.

Note You need to log in before you can comment on or make changes to this bug.