In addition to the limitations mentioned in other answers, as of February 2018, visibility:collapse still does not work on colgroups in Chrome and Chromium based browsers, due to a bug. See CSS col visibility:collapse does not work on Chrome.
So I believe the currently usable properties are just border, background, and width (unless you employ some sort of polyfill for Chrome and other Chromium-based browsers). The bug can be tracked at Issue 174167: visibility:collapse does not work correctly for table columns or rows.