Re: Multi-columns property proposal: column-gap and Co.

Andrew Fedoniouk / 2004-07-15 02:05:
> Considering that current proposal assumes creation of anonymous box for each
> column I think that we can remove these attributes at all:
> 
>   a.. column-gap
>   b.. column-rule
>   c.. column-rule-color
>   d.. column-rule-style
>   e.. column-rule-width
> If author needs ruler and the gap between columns it can be easily achieved
> as:
> 
> .mycolumnscontainer
> {
>      column-count :2;
> }
> .mycolumnscontainer > *  /* it matches all column boxes */
> {
>     border-left: 1pt solid red; /* the ruler */
>     padding:1em;  /* the gap */
> }

I though that the asterisk (*) shouldn't match anonymous content. 
IIRC there has been some discussion about having a selector to 
access anonymous content (at least display: table and display: 
table-cell can generate anonymous elements that one would want to 
access).

There are some problems, though. If one modifies properties of the 
columns via direct access the results would be more or less 
undefined. Think about

.mycolumnscontainer > *:first-child {
/* set properties for the "first column" */
   position: absolute;
   width: 200%;
   display: table-cell;
}

Where would that anonymous element (is that *still* the first 
column?) be positioned? Would that element still be taken into the 
consideration while computing widths of the other columns? Also, 
notice that display: table-cell generates even more anonymous 
elements. So the selector that matched this element and caused those 
extra anonymous elements to be created, wouldn't match anymore 
because the above selector would match the anonymous element with 
display: table after that. And therefore those extra anonymous 
elements shouldn't be created. After that the selector would match 
again and the those anonymous elements should be created after all....

-- 
Mikko

Received on Friday, 16 July 2004 08:16:40 UTC