XUL:Stack Sizing

From MozillaWiki
Jump to: navigation, search

-moz-stack-sizing attribute

Usage
-moz-stack-sizing is a CSS attribute which takes the values ignore or stretch-to-fit. It is only applicable to XUL stacks.
Purpose
-moz-stack-sizing can be used create stacks which have overlaid children which do not alter the size of the stack. This is particularly useful for the case where the overlaid control is only secondary to the main control and so shouldn't affect its size.
Status
There is a reviewed and super-reviewed patch for this attached to bug 346189. This patch is awaiting check-in on trunk and approval is also being sought for the Gecko 1.9 branch.

Use cases

  1. Tree has a control overlaid on it (there is now support for this built into the tree XBL in toolkit). The appearance of this control ideally shouldn't cause a reflow and cause the size of the flexible tree to resize. This case probably applies for most of the times when overlaid content is used in XUL (but not quite all uses, hence why it is a style and not a change of the default behaviour).
  2. Parts of a XUL document which want to use overflow: none and have a box positioned on this which doesn't affect the overall size, while still using flexibility for other parts of the window.