The default bug view has changed. See this FAQ.

-moz-float-edge sucks, should be taken out and shot

RESOLVED INVALID

Status

()

Core
Layout
P3
normal
RESOLVED INVALID
17 years ago
16 years ago

People

(Reporter: Hixie (not reading bugmail), Assigned: buster)

Tracking

(Blocks: 1 bug, {css-moz})

Trunk
Future
css-moz
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: (py8ieh: file new bugs -- 1. marker offset solution; 2. -moz-float-edge constraints bug; 3. offset text by overlapped margins))

Attachments

(1 attachment)

(Reporter)

Description

17 years ago
The CSS extension -moz-float-edge cannot be said to be buggy, since there is no
documentation (that I can find) telling us what it is supposed to do.

However, it is not a good solution to the problem it was trying to solve.

THE ORIGINAL PROBLEM:

The markup:

   <float> float </float>
   <block>
    <item> list item </item>
    <item> list item </item>
    <item> a much longer list item that must wrap </item>
    <item> final list item </item>  
   </block>


The wanted result:

   +-----------+ - - - - - - - - +
   | float     | 1. list item   
   |           | 2. list item    |
   +-----------+ 3. a much longer    
   |    list item that must wrap |
     4. final list item
   + - - - - - - - - - - - - - - +


The per-spec result:

   +-----------+ - - - - - - - - +
   | 1loat     | list item   
   | 2.        | list item       |
   +-3.--------+ a much longer    
   |    list item that must wrap |
     4. final list item
   + - - - - - - - - - - - - - - +


Our current result:

   +-----------+ - - - - - - - - +
   | float     | 1. list item   
   |           | 2. list item    |
   +-----------+ 3. a much longer    
                    list item that 
   |                must wrap    |
     4. final list item
   + - - - - - - - - - - - - - - +

Analagous situations exist for the right hand side.


AN ADDITIONAL PROBLEM THAT THIS PROPERTY INTRODUCES 

Markup:

   <float>
      <float> a float that overflows the parent </float>
      <item> an item with -moz-float-edge set </item>
   </float>

Rendering:

   +------------+
   |+-----------+-----------------------+ +-----------------+
   || a float that overflows the parent | | an item with    |
   |+-----------+-----------------------+ | -moz-float-edge |
   |            |                         | set             |
   +------------+                         +-----------------+

That is SO wrong!!! (see test case)


THE SOLUTION

My proposed solution involves changing the spec to say that the marker box, in
the presence of floats, should be placed relative to the first line box. I have
already sent this proposal to www-style (from way back in 1998!):

   http://lists.w3.org/Archives/Public/www-style/1998Dec/0066.html

I will send this to the WG again at some point.

I propose that we get rid of -moz-float-edge and use this solution instead.
(Reporter)

Updated

17 years ago
Keywords: correctness, css-moz, css1, ns601
Whiteboard: (py8ieh: resend proposal to wg)
Target Milestone: --- → Future
(Reporter)

Comment 1

17 years ago
Created attachment 15808 [details]
Test case showing one reason why -moz-float-edge sucks
I don't see how this is a CSS1 bug (in a strict sense, anyway, although it is
related to the CSS1 float property...).  Removing CSS1 keyword.  However, I
filed bug 54696 and added the CSS1 keyword to that bug.
Keywords: css1
(Reporter)

Comment 3

17 years ago
It's a CSS1 bug because the test case renders incorrectly per CSS1.
(Reporter)

Comment 4

17 years ago
Taking QA per managerial policy.
(Reporter)

Comment 5

17 years ago
Taking QA per managerial policy.
QA Contact: petersen → py8ieh=bugzilla
(Reporter)

Updated

17 years ago
Blocks: 54979
(Reporter)

Comment 6

17 years ago
We discused this at the W3C CSS Face to Face this week. The tentative 
conclusion was that -moz-float-edge in fact did not suck, but was merely a part
of a bigger solution, that includes the marker thing.

The additional problem listed above is a separate bug that we should fix.
Marking this bug INVALID for now. I will open the other bugs.
Status: NEW → RESOLVED
Last Resolved: 17 years ago
Keywords: ns601 → highrisk
Resolution: --- → INVALID
Whiteboard: (py8ieh: resend proposal to wg) → (py8ieh: file new bugs -- 1. marker offset solution; 2. -moz-float-edge constraints bug; 3. offset text by overlapped margins)
(Reporter)

Updated

17 years ago
Keywords: highrisk
(Reporter)

Comment 7

16 years ago
reassigning qa since i resolved the bug
QA Contact: ian → petersen
You need to log in before you can comment on or make changes to this bug.