You only get this kind of problem when you are manually controlling the high- and low-side switches manually. Bridge chips seldom make you do that and include the logic and drive circuitry within them so that you just control a HIGH or LOW to a "leg" and it switches the two transistors properly for you.
You normally get an "enable" and a "direction" input.
For instance, take the L298 internal circuit:
If we look at the left-most transistor pair you can see they are driven by a pair of gates. One has an inversion on the input. The gates are mainly there to AND the enable signal in, but the inversion on the upper input of the lower gate is the vital thing. That makes sure that one transistor is on when another is off. You can't turn both on, or both off - you only have a single signal that indicates which should be on.
Of course, that circuit is very simplified, and there is additional circuitry that ensures that during the switching period one transistor switches off before the other switches on. Matched transistors with known switching characteristics, adding offsets to the base voltages with diodes, etc are all methods that are used internally.
With MOSFET based bridges it's less of an issue since gate threshold (VGS) come into play and choosing and matching the transistors correctly automatically creates a "dead zone" in the switching input voltage range.