It would be nice if we could dynamically alter a visibility property like we can in other environments. (An accessible "enabled/disabled" property would be nice too.) But we can't.
We can, however, hide layout objects via script or calculation through several other methods.
Here's a demo file that illustrates several ways to make layout objects appear and disappear on command. It shows methods that work with conditional formatting (only works with some objects), invisible tab controls and portals (these can hide any layout object):