| Index: Source/core/css/resolver/StyleAdjuster.cpp
|
| diff --git a/Source/core/css/resolver/StyleAdjuster.cpp b/Source/core/css/resolver/StyleAdjuster.cpp
|
| index 215d499af052796dcfadab339bcc6cb48c84e9c4..7e5e771659a892b3409f328374f2a316cce052fc 100644
|
| --- a/Source/core/css/resolver/StyleAdjuster.cpp
|
| +++ b/Source/core/css/resolver/StyleAdjuster.cpp
|
| @@ -260,14 +260,20 @@ void StyleAdjuster::adjustRenderStyle(RenderStyle* style, RenderStyle* parentSty
|
| if (style->display() == INLINE && style->styleType() == NOPSEUDO && style->writingMode() != parentStyle->writingMode())
|
| style->setDisplay(INLINE_BLOCK);
|
|
|
| - // After performing the display mutation, check table rows. We do not honor position:relative or position:sticky on
|
| - // table rows or cells. This has been established for position:relative in CSS2.1 (and caused a crash in containingBlock()
|
| + // After performing the display mutation, check table rows. We do not honor position: relative table rows or cells.
|
| + // This has been established for position: relative in CSS2.1 (and caused a crash in containingBlock()
|
| // on some sites).
|
| if ((style->display() == TABLE_HEADER_GROUP || style->display() == TABLE_ROW_GROUP
|
| || style->display() == TABLE_FOOTER_GROUP || style->display() == TABLE_ROW)
|
| && style->position() == RelativePosition)
|
| style->setPosition(StaticPosition);
|
|
|
| + // Cannot support position: sticky for table columns and column groups because current code is only doing
|
| + // background painting through columns / column groups
|
| + if ((style->display() == TABLE_COLUMN_GROUP || style->display() == TABLE_COLUMN)
|
| + && style->position() == StickyPosition)
|
| + style->setPosition(StaticPosition);
|
| +
|
| // writing-mode does not apply to table row groups, table column groups, table rows, and table columns.
|
| // FIXME: Table cells should be allowed to be perpendicular or flipped with respect to the table, though.
|
| if (style->display() == TABLE_COLUMN || style->display() == TABLE_COLUMN_GROUP || style->display() == TABLE_FOOTER_GROUP
|
|
|