- From: Axel Dahmen <brille1@hotmail.com>
- Date: Tue, 10 Feb 2015 23:26:53 +0100
- To: www-style@w3.org
> There are some nice layouts here, but I don't think that anybody wants
> to make such drastic changes to the table layout model.
Sure. I'm but proposing a suggestion here and would want to leave the
evaluation of benefit/importance to others who are more eligible than I am.
>Looks like you're imagining a hybrid between collapsed and separate
borders.
Yes, you are absolutely right. That was my mistake when trying to bring down
my first thoughts. Of course, a property like "table-cell-priority" is
nonsense here. The same would be achievable easily with simple CSS. The most
important part of my suggestion instead is that if table-row,
table-row-group, table-header-group, table-column and table-column-group
would be accepting the standard box model. border-spacing, however, would
become obsolete.
Please refer to my following new mock images for references on the issues
you mentioned in the following:
http://imgur.com/a/4sA51
> Borders all normally take up space (unless you're collapsing
> them) and affect layout, so I'd think that if you have col, tr {
> border:2px solid; } and td { border:3px solid; }, a cell would be
> surrounded by its own borders, and then, on the outside, the border of
> the row and column? Which of them (rows / columns) should come first,
> BTW, and what if they have different style or color? That could
> potentially look hideous, on a general basis.
You're absolutely right. But with simple CSS this can be caught. See image
#2 for reference.
Or if the programmer intentionally wants to see these borders - he/she
simply can. See image #1 for reference.
> How should the following be rendered?
> <table>
> <col style="border:3px solid blue;">
> <tr style="border:3px solid pink;">
> <td>x</td>
> </tr>
> </table>
> Column borders on the outside, row borders on the inside? Or the other
> way around? Or column borders on the outside on the left and right
> sides, and row borders on the outside at the top and bottom?
I would want to leave the decision of what's outer or inner to others.
However, my personal preference (reflected in my images) is the following:
table
\- table-column-group
\- table-column
\- table-row-group
\- table-row
\- table-cell
Padding, borders and margin would only affect the corresponding sides of
elements they touch. (I've been trying to be as precise as possible in
images #3 and #4 to, e.g., reflect the influence on table-column elements
only to the left/right side of affected child elements.)
For reference, see images #3 and #4 in the album.
> Together with border-spacing, you'll end up with a constantly
> over-constrained situation here. That could of course be fixed by
> introducing an 'auto' value for border-spacing, and require that it
> always be 'auto' if the author wants borders, padding and margins.
That's why border-spacing should become obsoleted. table-cell margins would
perfectly do.
> Also - what about rowspan > 1?
Good question! My consideration is that table-columns and table-rows are not
concerned with rowspan/colspan. So they should just ignore these. See image
#4 for reference.
RFC,
Axel Dahmen
Received on Tuesday, 10 February 2015 22:29:31 UTC