[csswg-drafts] [css-tables] Need to define what happens when a table has both collapsed borders and collapsed tracks (#11568)

Loirooriol has just created a new issue for https://github.com/w3c/csswg-drafts:

== [css-tables] Need to define what happens when a table has both collapsed borders and collapsed tracks ==
https://drafts.csswg.org/css-tables/#border-collapsing

https://drafts.csswg.org/css-tables/#visibility-collapse-rendering

It would probably look the best if border collapsing happened after removing collapsed tracks. But of course this would violate https://www.w3.org/TR/CSS22/tables.html#dynamic-effects

> The suppression of the row or column, however, does not otherwise affect the layout of the table. This allows dynamic effects to remove table rows or columns without forcing a re-layout of the table in order to account for the potential change in column constraints.

So Blink and Servo just let borders overlap each other, or overlap the contents of a cell. But they are only interoperable in the most basic cases.

Firefox seems to ignore the fact that columns may collapse, but it handles collapsed rows.

Webkit doesn't support collapsing tracks.

```html
<!DOCTYPE html>
<style>td { border: 20px solid }</style>
<table style="border-collapse: collapse; width: 200px; height: 200px">
  <col style="visibility: collapse"></col>
  <tr style="visibility: collapse">
    <td>A</td>
    <td>B</td>
  </tr>
  <tr>
    <td>C</td>
    <td>D</td>
  </tr>
</table>
```

| Blink, Servo with https://github.com/servo/servo/pull/35165 | Gecko |
| - | - |
| ![](https://github.com/user-attachments/assets/d30d4d22-afac-4a1d-a8e8-b6de99465219) | ![](https://github.com/user-attachments/assets/65ecc87b-79eb-4a43-90a0-46ee4772f1fc) |

Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/11568 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Friday, 24 January 2025 23:55:34 UTC