WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED CONFIGURATION CHANGED
14849
Setting valign on a table in JavaScript has no effect
https://bugs.webkit.org/show_bug.cgi?id=14849
Summary
Setting valign on a table in JavaScript has no effect
Brett Wilson (Google)
Reported
2007-08-01 09:18:21 PDT
vAlign="top" on a table row has no effect from JavaScript (although it works if set in the source HTML, of course). This may be true for other alignments as well, but I'm not sure. This may be related to several other JS table bugs I filed:
bug 14848
and
bug 14846
.
Attachments
Testcase
(556 bytes, text/html)
2007-08-01 09:18 PDT
,
Brett Wilson (Google)
no flags
Details
Test case for the underlying bug.
(288 bytes, text/html)
2007-08-01 12:42 PDT
,
mitz
no flags
Details
Proposed Patch
(835 bytes, patch)
2010-06-17 05:17 PDT
,
kushalsingla2k5
no flags
Details
Formatted Diff
Diff
Proposed Path with change log
(1.56 KB, patch)
2010-06-24 09:24 PDT
,
kushalsingla2k5
ojan
: review-
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Brett Wilson (Google)
Comment 1
2007-08-01 09:18:54 PDT
Created
attachment 15781
[details]
Testcase Pressing the button should valign the rows, but does not. It works in IE and Firefox.
mitz
Comment 2
2007-08-01 12:42:24 PDT
Created
attachment 15788
[details]
Test case for the underlying bug. vertical-align is not an inherited property, so recalcStyle does not continue to descendants. What recalcStyle does not know is that table rows and table cells have 'vertical-align: inherit' by default, so they do need a recalc. The issue is not limited to mapped attributes, as this test case demonstrates.
Dave Hyatt
Comment 3
2008-01-16 12:25:43 PST
We basically need to find a way to retain the (very useful) performance optimization of avoiding propagation to decendants for non-inherited properties while still being correct. One idea would be to just propagate non-inherited properties when we see an inherit keyword used on any stylesheet used by the document.
Eric Seidel (no email)
Comment 4
2008-01-16 12:31:14 PST
As discussed on IRC: this would mean adding a HashSet of properties which used the inherit keyword at any time during the document's lifetime. We would do a lookup in that set after setting any non-inherited CSS property, if the lookup returned true, then we'd force a style re-calc just as though the property was an inherited property.
Dave Hyatt
Comment 5
2008-01-16 13:19:58 PST
We can also just hack valign in the table DOM code.
kushalsingla2k5
Comment 6
2010-06-17 05:17:35 PDT
Created
attachment 58983
[details]
Proposed Patch If vAlign property of the table row or table cell is changed through javascript,this patch will propagate the effect down the hierarchy.
kushalsingla2k5
Comment 7
2010-06-24 09:24:12 PDT
Created
attachment 59661
[details]
Proposed Path with change log If vAlign property of the table row or table cell is changed through javascript,this patch will propagate the effect down the hierarchy.
Andreas Kling
Comment 8
2010-07-10 11:36:11 PDT
Comment on
attachment 58983
[details]
Proposed Patch Removing r? from redundant patch.
Ojan Vafai
Comment 9
2010-07-22 16:01:32 PDT
Comment on
attachment 59661
[details]
Proposed Path with change log I'm not sure about the correctness of this code, but it needs a layout test before it can be committed.
Ahmad Saleem
Comment 10
2023-02-18 03:39:55 PST
We pass all valign test cases -
https://wpt.fyi/results/html?label=master&label=experimental&aligned&view=subtest&q=valign
Do we need to do anything more here?
Alexey Proskuryakov
Comment 11
2024-06-17 15:26:25 PDT
The attached test case for the underlying bug is green, so seems like time to close indeed.
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