What exactly does this line of code do, and how come I don’t see a visual difference when I remove it? And if there is a visual difference can someone point it out to me cause I don’t see it.
There is no visible with the above CSS or without it because most of the properties cannot be applied to a tablle-cell, they are table properties. In other words, they are not doing anything.
The table-rows are part of the structure of a table and are supposed to follow a table element, not follow a table-cell.
Add {border-collapse:collapse} to .wrap. border-collapse only acts on tables. You should see a difference when .wrap is set to display:table;border-collapse:collapse. Then change display:table back to display:table-cell and see what changes, then remove the CSS entirely and watch nothing change again.
The reason your display is not changing is because browsers are creating anonymous table elements that happen to work.
.outer and .wrap are two different elements that have been assigned {display:table}, so yes, there is a difference. Border-collapse only affects the table to which it is assigned. If the selector targets all tables, then all tables are affected.
No. Targeting the .wrap tag directly works, of course, and targeting the parent .tcell works because border-collapse is inherited from the parent .tcell (parent element)
You can demonstrate that assigning {border-collapse} to a .tcell does nothing by removing it from .outer .tcell and applying it to any of .theBoxes. There will be no collapsing of borders.