WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
NEW
51978
Marquee inside table incorrectly sized
https://bugs.webkit.org/show_bug.cgi?id=51978
Summary
Marquee inside table incorrectly sized
Tony Gentilcore
Reported
2011-01-05 20:48:12 PST
Created
attachment 78092
[details]
Testcase 1. Visit
http://www.bankmuscat.com/
. 2. Notice there is a wide horizontal scroll in WebKit. 3. There is no horizontal scroll in FF4. This is caused by a <marquee> with wide content and white-space:nowrap inside of a <table>. Removing the white-space:nowrap or the table removes the horizontal scroll. See testcase. Originally filed in chromium as
http://crbug.com/68612
Attachments
Testcase
(797 bytes, text/html)
2011-01-05 20:48 PST
,
Tony Gentilcore
no flags
Details
Testcase for marquee with overflow property
(2.30 KB, text/html)
2012-04-10 04:32 PDT
,
Arpita Bahuguna
no flags
Details
Patch
(6.25 KB, patch)
2012-04-19 05:54 PDT
,
Arpita Bahuguna
jchaffraix
: review-
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Arpita Bahuguna
Comment 1
2012-04-09 07:23:54 PDT
The issue seems to be not as much to do with the white-space or the table (holding the marquee) as it is to do with the overflow: hidden property set on it. WebKit currently sets the overflow CSS property either as hidden (if specified) or as marquee (if it is a marquee element with no overflow specified) or as any of the scroll, auto, visible property values. This causes our "marquee" setting to be overridden by "hidden" (if marquee element has been specified with the overflow: hidden property). Thus currently for the marquee element (with overflow: hidden) WebKit is not even creating the corresponding renderer. Shall do further study of the same and try to upload a patch for it shortly.
Arpita Bahuguna
Comment 2
2012-04-10 04:32:29 PDT
Created
attachment 136428
[details]
Testcase for marquee with overflow property The attached testcase contains marquee elements with different overflow properties. Note that only the marquee elements with no overflow property specified are rendered properly.
Arpita Bahuguna
Comment 3
2012-04-19 05:54:48 PDT
Created
attachment 137888
[details]
Patch
Adele Peterson
Comment 4
2012-04-19 15:35:41 PDT
Comment on
attachment 137888
[details]
Patch It seems a little weird to clobber the style like this. Although I guess we're already doing that a little. We could just make the html.css rule for marquee tags !important.
Julien Chaffraix
Comment 5
2012-04-19 16:25:40 PDT
Comment on
attachment 137888
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=137888&action=review
> Source/WebCore/css/CSSStyleSelector.cpp:2030 > + if (e && e->hasTagName(marqueeTag)) { > style->setOverflowX(OMARQUEE); > - else if (style->overflowX() == OVISIBLE && style->overflowY() != OVISIBLE) > + style->setOverflowY(OMARQUEE); > + }
That's plain wrong: by default, marquee has those set-up and we allow people to override them. Do you have any proof that this is actually breaking any website? If not, that's how it's implemented in WebKit and allowing people to override that is good! (like <div style="display:table-cell">). We do need to drop our overflow: -webkit-marquee extension to fix this bug properly but that's another story.
Julien Chaffraix
Comment 6
2012-04-20 06:51:00 PDT
For anyone trying to fix this, WebKit ties the marquee behavior to the overflow property (using a -webkit-marquee extension). This was done to match an older version of the specification that doesn't make sense anymore. The proper fix is to move the behavior to a -webkit-overflow-style to follow the new specification (www.w3.org/TR/css3-marquee/). We will also need to deprecate overflow: -webkit-marquee.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug