Place position:absolute, fixed, relative elements above non positioned elements. b=137853 r=roc+moz sr=kin

git-svn-id: svn://10.0.0.236/trunk@124460 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
kmcclusk%netscape.com
2002-07-02 02:53:35 +00:00
parent 43e0182718
commit 16fa19c5d5
12 changed files with 109 additions and 42 deletions

View File

@@ -650,18 +650,23 @@ nsContainerFrame::SyncFrameViewAfterReflow(nsIPresContext* aPresContext,
// Make sure z-index is correct
PRInt32 zIndex = 0;
PRInt32 oldZIndex;
PRBool oldAutoZIndex;
PRBool oldTopMost;
PRBool autoZIndex = PR_FALSE;
const nsStylePosition* position;
aView->GetZIndex(oldZIndex, oldAutoZIndex, oldTopMost);
aFrame->GetStyleData(eStyleStruct_Position, (const nsStyleStruct*&)position);
if (position->mZIndex.GetUnit() == eStyleUnit_Integer) {
zIndex = position->mZIndex.GetIntValue();
} else if (position->mZIndex.GetUnit() == eStyleUnit_Auto) {
autoZIndex = PR_TRUE;
}
vm->SetViewZIndex(aView, autoZIndex, zIndex);
}
vm->SetViewZIndex(aView, autoZIndex, zIndex, oldTopMost);
// There are two types of clipping:
// - 'clip' which only applies to absolutely positioned elements, and is