Bug 624301. Only change background clip to padding-box for solid borders if it's border-box to start with. r=dbaron

This commit is contained in:
Boris Zbarsky 2011-01-14 10:34:39 -05:00
Родитель c7f12262b2
Коммит a7b1a5d4eb
4 изменённых файлов: 26 добавлений и 1 удалений

Просмотреть файл

@ -2288,7 +2288,7 @@ nsCSSRendering::PaintBackgroundWithSC(nsPresContext* aPresContext,
currentBackgroundClip = bg->BottomLayer().mClip;
isSolidBorder =
(aFlags & PAINTBG_WILL_PAINT_BORDER) && IsOpaqueBorder(aBorder);
if (isSolidBorder)
if (isSolidBorder && currentBackgroundClip == NS_STYLE_BG_CLIP_BORDER)
currentBackgroundClip = NS_STYLE_BG_CLIP_PADDING;
SetupBackgroundClip(ctx, currentBackgroundClip, aForFrame,
aBorderArea, aDirtyRect, haveRoundedCorners,

Просмотреть файл

@ -0,0 +1,12 @@
<!DOCTYPE html>
<html>
<body>
<div style="padding: 10px;
width: 100px;
height: 100px;
border: 10px solid black">
<div style="width: 100px; height: 100px; background: black">
</div>
</div>
</body>
</html>

Просмотреть файл

@ -0,0 +1,12 @@
<!DOCTYPE html>
<html>
<body>
<div style="padding: 10px;
width: 100px;
height: 100px;
background-color: black;
border: 10px solid black;
background-clip: content-box;">
</div>
</body>
</html>

Просмотреть файл

@ -27,6 +27,7 @@
== background-redraw-237766.html background-redraw-237766-ref.html
== background-clip-1.html background-clip-1-ref.html
== background-clip-2.html background-clip-2-ref.html
== background-size-auto-auto.html background-size-auto-ref.html
== background-size-auto.html background-size-auto-ref.html