- From: Sylvain Galineau <sylvaing@microsoft.com>
- Date: Mon, 1 Jun 2009 22:56:30 -0700
- To: "www-style@w3.org" <www-style@w3.org>
Hi, a few comments on the pseudo-code in section 4.4 [1]. a. I suggest adding line numbers to the code block; it may be very helpful when referring to and commenting about it. I provide a full copy below. b. Given that the result of the algorithm may depend on the shrink-to-fit value, should the algorithm to define this computation be left undefined by CSS ? c. Line 30 should be : W := available-width; d. Same for line 41. e. Section 4.1 indicates that column-width's value may expand to fill the available space. Yet this is not what the clause from lines 35-38 does. It seems its outcome is only valid when the expression matches available-width i.e. (35) elsif ((column-count * column-width) + ((column-count - 1 ) * column-gap) = available-width) then ...instead of : (35) elsif ((column-count * column-width) + ((column-count - 1 ) * column-gap) <= available-width) then (1) if ((column-width = auto) and (column-count = auto)) or (2) ((available-width = unknown) and (column-count = auto)) then (3) exit; /* no columns */ (4) fi (5) (6) if (available-width = unknown) and (column-count != auto) and (column-width != auto) then (7) N := column-count; (8) W := column-width; (9) exit; (10) fi (11) (12) if (available-width = unknown) then (13) available-width := shrink-to-fit; (14) fi (15) (16) if (column-width = auto) then (17) if ((column-count - 1) * column-gap < available-width) then (18) N := column-count; (19) W := (available-width - ((N - 1) * column-gap))/N; (20) elsif (column-gap >= available-width) then (21) N := 1; (22) W := available-width; (23) else (24) N := floor(available-width/column-gap); (25) W := (available-width - ((N - 1) * column-gap))/N; (26) fi (27) elsif (column-count = auto) then (28) if (column-width >= available-width) then (29) N := 1 (30) W := column-width; (31) else (32) N := floor((available-width + column-gap) / (column-width + column-gap)); (33) W := ((available-width + column-gap) / N) - column-gap; (34) fi (35) elsif ((column-count * column-width) + ((column-count - 1 ) * column-gap) <= available-width) then (36) N := column-count; (37) W := column-width; (38) elsif (column-width >= available-width) then (40) N := 1 (41) W := column-width; (42) else (43) N := floor((available-width + column-gap) / (column-width + column-gap)); (44) W := ((available-width + column-gap) / N) - column-gap; (45) fi [1] http://dev.w3.org/csswg/css3-multicol/#pseudo-algorithm
Received on Tuesday, 2 June 2009 05:57:08 UTC