2929
3030 < h1 > CSS Multi-column Layout Module</ h1 >
3131
32- < h2 class ="no-num no-toc " id =w3c-working > Editor's Draft 8 March 2011</ h2 >
32+ < h2 class ="no-num no-toc " id =w3c-working > Editor's Draft 9 March 2011</ h2 >
3333
3434 < dl >
3535 < dt > This version:
3636
3737 < dd >
38- <!--<a href="http://www.w3.org/TR/2011/CR-css3-multicol-20110308 ">http://www.w3.org/TR/2011/ED-css3-multicol-20110308 </a>-->
38+ <!--<a href="http://www.w3.org/TR/2011/CR-css3-multicol-20110309 ">http://www.w3.org/TR/2011/ED-css3-multicol-20110309 </a>-->
3939 < a
4040 href ="http://dev.w3.org/csswg/css3-multicol/ "> http://dev.w3.org/csswg/css3-multicol/</ a >
4141
@@ -960,7 +960,7 @@ <h3 id=pseudo-algorithm><span class=secno>3.4. </span>Pseudo-algorithm</h3>
960960(04) fi
961961(05)
962962(06) if (available-width = unknown) and (column-count != auto) and (column-width != auto) then
963- (07) N := column-count;
963+ (07) N := column-count;
964964(08) W := column-width;
965965(09) exit;
966966(10) fi
@@ -987,6 +987,48 @@ <h3 id=pseudo-algorithm><span class=secno>3.4. </span>Pseudo-algorithm</h3>
987987(39) N := min(column-count, floor((available-width + column-gap) / (column-width + column-gap)))
988988(40) W := ((available-width + column-gap) / N) - column-gap;
989989(41) fi
990+ </ pre >
991+
992+ < p > < span class =issue > Alternative pseudo-algorithm: </ span >
993+
994+ < pre >
995+
996+ (01) if ((column-width = auto) and (column-count = auto)) or
997+ (02) ((available-width = unknown) and (column-count = auto)) then
998+ (03) exit; /* no columns */
999+ (04) fi
1000+ (05)
1001+ (06) if (available-width = unknown) and (column-count != auto) and (column-width != auto) then
1002+ (07) N := column-count;
1003+ (08) W := column-width;
1004+ (09) exit;
1005+ (10) fi
1006+
1007+ (12) if (available-width = unknown) then
1008+ (13) available-width := shrink-to-fit;
1009+ (14) fi
1010+
1011+ /* the next block is used when column-count is set, and column-width is auto */
1012+
1013+ (16) if (column-width = auto) then
1014+ (18) N := column-count;
1015+ (19) W := max(0, (available-width - ((N - 1) * column-gap))/N);
1016+ exit;
1017+ fi
1018+
1019+ /* the next block is used when column-width is set, and column-count is auto */
1020+
1021+ (27) if (column-count = auto) then
1022+ (32) N := min(1, floor((available-width + column-gap) / (column-width + column-gap)));
1023+ (33) W := ((available-width + column-gap) / N) - column-gap;
1024+ exit;
1025+ fi
1026+
1027+ /* the next block is used if both column-count and column-width are set */
1028+
1029+ (39) N := min(column-count, floor((available-width + column-gap) / (column-width + column-gap)))
1030+ (40) W := ((available-width + column-gap) / N) - column-gap;
1031+
9901032</ pre >
9911033
9921034 < p > In paged media, user agents may perform this calculation on a per-page
0 commit comments