Why do solids have a definite volume?

The attractive forces bind the solid particles so strongly that they have fixed positions, and are not free to move about. Hence, they possess definite volume.