- From: MURAKAMI Shinyu <murakami@antenna.co.jp>
- Date: Thu, 08 Jan 2009 18:24:15 +0900
- To: www-style@w3.org
- Message-Id: <20090108103733.C32B.C598BCD7@antenna.co.jp>
The current css3-page[1] and css3-multicol[2] drafts say that margins will be set to zero where page or column breaks occur. [1] http://dev.w3.org/csswg/css3-page/#allowed-pg-brk ... When a page break occurs here, the used values of the adjoining 'margin-bottom' and 'margin-top' properties are set to '0'. [2] http://dev.w3.org/csswg/css3-multicol/#column0 Because the rules for column breaks are similar to rules for page breaks, margins will be set to zero where column breaks occur. I have some questions here: 1. Margins at beginning of document will be set to zero? 2. Margins at forced page breaks will be set to zero? 3. Margins at beginning of multi-column content will be set to zero? 4. Margins at forced column breaks (or forced page breaks in multi-column content) will be set to zero? I examined some existing implementations with the attached test files: margin-at-break.html -- for test 1 and 2 margin-at-break-multicol.html -- for test 3 and 4 implementations: Firefox 3.1 Beta 2 Safari 3.2.1 Prince 6.0r7 PDFreactor 3.0.3311 test results: 1. Margins at beginning of document will be set to zero? Firefox=No Safari=No Prince=No PDFreactor=Yes 2. Margins at forced page breaks will be set to zero? Firefox=Yes Safari=Yes Prince=No PDFreactor=Yes 3. Margins at beginning of multi-column content will be set to zero? Firefox=Yes Safari=No Prince=Yes PDFreactor=? (multi-column not yet supported) 4. Margins at forced column breaks (or forced page breaks in multi-column content) will be set to zero? Firefox=Yes Safari=? (forced column breaks not yet supported?) Prince=Yes PDFreactor=? (multi-column not yet supported) Which implementation is right? Antenna House Formatter v5 Beta currently handled these margins in a compatible way with Prince, i.e., 1=No, 2=No, 3=Yes, 4=Yes. But if the CSS specification is clearly defined, we will follow it. For your information: XSL-FO[3] has space-before and space-after properties similar to margin-top and margin-bottom in CSS. [3] Extensible Stylesheet Language (XSL) Version 1.1 http://www.w3.org/TR/xsl11/ Space-before and space-after are discarded by default at the beginning or end of a reference-area ("flow root" in CSS, i.e., page, column, table-cell etc.) and it can be changed with space-before.conditionality and space-after.conditionality specification. Example: <fo:block space-before="2cm"> The space-before of this block is discarded at beginning of page or column. </fo:block> <fo:block space-before="2cm" space-before.conditionality="retain"> The space-before of this block is not discarded at beginning of page or column. </fo:block> -- Shinyu Murakami http://www.antennahouse.com Antenna House Formatter http://www.antenna.co.jp/AHF/en/
Attachments
- text/html attachment: margin-at-break.html
- text/html attachment: margin-at-break-multicol.html
Received on Thursday, 8 January 2009 09:25:15 UTC