Introduction

This document describes the additional information that is stored for border collapse tables in the cellmap.

Information storage

Each cellmap entry stores for tables in the border collapse mode additional information about its top and left edge and its top left corner.

As one can see from the following illustration this is enough to cover a whole table.

Image:bcentry.png

Only the right most edge and the bottom most edge of a table need to be stored in a different place.

Border

For the top and left border we store the width and the owner of the border. The width is stored in pixel coordinates.

The following owners are possible:

 eTableOwner        =  0,
 eColGroupOwner     =  1,
 eAjaColGroupOwner  =  2, // col group to the left
 eColOwner          =  3,
 eAjaColOwner       =  4, // col to the left
 eRowGroupOwner     =  5,
 eAjaRowGroupOwner  =  6, // row group above
 eRowOwner          =  7,
 eAjaRowOwner       =  8, // row above
 eCellOwner         =  9,
 eAjaCellOwner      = 10  // cell to the top or to the left

The ownership is determined by the rules for border conflict resolution as defined in CSS 2.1

Corner

For the corner we store