- From: David Hyatt <hyatt@apple.com>
- Date: Wed, 22 Apr 2009 10:33:39 -0500
- To: "Tab Atkins Jr." <jackalmage@gmail.com>
- Cc: Niels Matthijs <niels.matthijs@internetarchitects.be>, www-style@w3.org
On Apr 22, 2009, at 9:55 AM, Tab Atkins Jr. wrote: > On Wed, Apr 22, 2009 at 5:27 AM, Niels Matthijs > <niels.matthijs@internetarchitects.be> wrote: >> Hi all, >> >> I was reading up on collapsing margins as they've been causing me >> quite some trouble. Whenever a child element has a different >> background styling from its parent, collapsing margins are usually >> troublesome. The collapse is broken by padding and borders, but not >> by different style of background (which also indicates separation). >> >> Rather than change the rules for collapsing, I wonder if it >> wouldn't be better to give css people the opportunity to manage >> them themselves if needed. In short, introduce a new property which >> can break the collapse when needed, because adding unneeded >> borders, paddings or overflows is really not the way to go. >> >> Further explanations of my view can be found in the following >> article: >> http://www.onderhond.com/blog/work/collapsing-margins-improvement >> >> I apologize if this issue was already raised, but couldn't find any >> information about it. > > I know that a property to indicate that an element should form a block > formatting context has been suggested before. That would prevent > margins from collapsing, as well as doing a few other things. Would > that be acceptable? > > I agree that the ability to stop margin collapsing at will would be > occasionally useful. I've had to hack around the problem with 1px > padding or border before as well. > > ~TJ > These properties exist in WebKit. I proposed them for standardization back when I implemented them and got a lukewarm response, so never followed up. I'll propose them again now in case there is more interest. -webkit-margin-top-collapse -webkit-margin-bottom-collapse Supported values are: collapse - Do the collapse as normal. separate - Don't collapse. discard - Do the collapse and discard the entire result (this is actually how margins in table cells work for many HTML elements in quirks mode). dave (hyatt@apple.com)
Received on Wednesday, 22 April 2009 15:34:23 UTC