Changeset 98997 in webkit


Ignore:
Timestamp:
Nov 1, 2011 1:55:57 PM (12 years ago)
Author:
dominicc@chromium.org
Message:

display: table-cell and box-sizing: border-box calculates content-box height
https://bugs.webkit.org/show_bug.cgi?id=69425

Reviewed by Dan Bernstein.

Source/WebCore:

Test: fast/box-sizing/table-cell.html

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::calcRowLogicalHeight):

LayoutTests:

  • fast/box-sizing/table-cell-expected.txt: Added.
  • fast/box-sizing/table-cell.html: Added.
Location:
trunk
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r98996 r98997  
     12011-11-01  Dominic Cooney  <dominicc@chromium.org>
     2
     3        display: table-cell and box-sizing: border-box calculates content-box height
     4        https://bugs.webkit.org/show_bug.cgi?id=69425
     5
     6        Reviewed by Dan Bernstein.
     7
     8        * fast/box-sizing/table-cell-expected.txt: Added.
     9        * fast/box-sizing/table-cell.html: Added.
     10
    1112011-11-01  Kenji Imasaki  <imasaki@chromium.org>
    212
  • trunk/Source/WebCore/ChangeLog

    r98990 r98997  
     12011-11-01  Dominic Cooney  <dominicc@chromium.org>
     2
     3        display: table-cell and box-sizing: border-box calculates content-box height
     4        https://bugs.webkit.org/show_bug.cgi?id=69425
     5
     6        Reviewed by Dan Bernstein.
     7
     8        Test: fast/box-sizing/table-cell.html
     9
     10        * rendering/RenderTableSection.cpp:
     11        (WebCore::RenderTableSection::calcRowLogicalHeight):
     12
    1132011-11-01  Alok Priyadarshi  <alokp@chromium.org>
    214
  • trunk/Source/WebCore/rendering/RenderTableSection.cpp

    r98980 r98997  
    364364            }
    365365
    366             LayoutUnit adjustedPaddingBefore = cell->paddingBefore() - cell->intrinsicPaddingBefore();
    367             LayoutUnit adjustedPaddingAfter = cell->paddingAfter() - cell->intrinsicPaddingAfter();
    368366            LayoutUnit adjustedLogicalHeight = cell->logicalHeight() - (cell->intrinsicPaddingBefore() + cell->intrinsicPaddingAfter());
    369367
    370             // Explicit heights use the border box in quirks mode.  In strict mode do the right
    371             // thing and actually add in the border and padding.
    372             ch = cell->style()->logicalHeight().calcValue(0) +
    373                 (document()->inQuirksMode() ? 0 : (adjustedPaddingBefore + adjustedPaddingAfter +
    374                                                    cell->borderBefore() + cell->borderAfter()));
     368            ch = cell->style()->logicalHeight().calcValue(0);
     369            if (document()->inQuirksMode() || cell->style()->boxSizing() == BORDER_BOX) {
     370                // Explicit heights use the border box in quirks mode.
     371                // Don't adjust height.
     372            } else {
     373                // In strict mode, box-sizing: content-box do the right
     374                // thing and actually add in the border and padding.
     375                LayoutUnit adjustedPaddingBefore = cell->paddingBefore() - cell->intrinsicPaddingBefore();
     376                LayoutUnit adjustedPaddingAfter = cell->paddingAfter() - cell->intrinsicPaddingAfter();
     377                ch += adjustedPaddingBefore + adjustedPaddingAfter + cell->borderBefore() + cell->borderAfter();
     378            }
    375379            ch = max(ch, adjustedLogicalHeight);
    376380
Note: See TracChangeset for help on using the changeset viewer.