Hitbox

A hitbox or collision box defines the physical "boundaries" (or an approximation thereof) of a block or entity. Hitboxes are utilised in the calculations of collisions and targeting.

Block hitboxes
Blocks can be said to have two separate hitboxes: the hitbox which is used to manage collision with entities, and the hitbox used and shown when aiming at a given block. The first hitbox is always invisible, although generally well approximated by the block's vanilla model appearence. This hitbox is not strictly present for all blocks, as many blocks such as grass, signs and torch can be moved through with no collision whatsoever.

The second hitbox, which deals with aiming at blocks, is present for all blocks. These hitboxes become visible as a wireframe outline when the crosshairs are pointed at the block in question, indicating that the block is being targeted, and can be broken, placed on or interacted with as neccessary.

Fluids do not have hitboxes, even in cases where they would behave like a block.

Entity hitboxes
The hitboxes of entities are always strictly cuboids, regardless of the actual shape of the entity (an exception being the ender dragon, which is composed of nine distinct hitboxes). Entity hitboxes can be viewed via the F3+B debug shortcut.