Closed
Bug 324029
Opened 20 years ago
Closed 20 years ago
overflow-x and overflow-y not distinguished from overflow
Categories
(Core :: CSS Parsing and Computation, defect)
Tracking
()
RESOLVED
INVALID
People
(Reporter: grasshopper, Assigned: dbaron)
Details
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8) Gecko/20051111 Firefox/1.5
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8) Gecko/20051111 Firefox/1.5
If I apply the following CSS to a div:
overflow-x: visible;
overflow-y: auto;
the div behaves as if I had said:
overflow: auto;
I get the same behavior if I reverse x and y, and no combination of overflow-x and overflow-y yields the correct behavior. My test case is a set of nested divs where the child divs are draggable via scriptaculous. The overflow property causes the parent div to overflow so that the child is still within it, causing undesired dragging behavior. Specifying overflow behavior per-axis solves the problem in Internet Explorer, Opera and Safari, as I expected. Konqueror doesn't seem to understand overflow-* at all.
Reproducible: Always
Steps to Reproduce:
Create a div and assign it the css properties overflow-x: auto; and overflow-y: visible; width: 100%; height: 5em;. Fill it with enough javascript-draggable items to overflow it on the y axis, so vertical scrollbar appears.
Actual Results:
The div behaves as if I had said overflow: auto;
Dragging the child in any direction (on any axis) causes the parent (with per-axis overflow set) to overflow to contain the child. Visually, the draggable element disappears behind the page.
Expected Results:
Dragging a child on the overflow: visible axis (the x axis in this case) should not cause the parent to overflow to contain it. The draggable element should remain visible.
Every browser tested except Konqueror (Internet Explorer, Opera and Safari) behaved correctly.
Updated•20 years ago
|
Assignee: nobody → dbaron
Component: General → Style System (CSS)
Product: Firefox → Core
QA Contact: general → ian
Version: unspecified → 1.8 Branch
| Assignee | ||
Comment 1•20 years ago
|
||
You can't do this; see http://www.w3.org/TR/css3-box/#the-overflow-x .
There are good reasons for such a prohibition: boxes with 'overflow: visible' behave very differently from other values of overflow regarding floats, etc. Never mind that having material cross over a scrollbar just doesn't make much sense. (Is that what the other browsers do? You just said it "works", and you didn't attach a testcase.)
Status: UNCONFIRMED → RESOLVED
Closed: 20 years ago
Resolution: --- → INVALID
| Assignee | ||
Comment 2•20 years ago
|
||
(Note that the draft is a bit out of date, 'hidden' is now a lot more like 'auto' and 'scroll'.)
| Assignee | ||
Comment 3•20 years ago
|
||
The dragging bug you're describing could be a bug, though, but it's impossible to tell without a testcase.
I'm also a bit surprised that Opera and Safari (esp. Opera) support overflow-x and overflow-y at all.
You need to log in
before you can comment on or make changes to this bug.
Description
•