Lore reasons: Given that Zenyatta already floats I posit it’d be logical if he could just float anywhere, including over pits and drops. It doesn’t make much sense that he drops to his death just because he encountered stairs of unusual steepness.
Balance reasons: Zenyatta currently is the weakest support. Making him largely immune to environmental kills would give him some boost and additional flavor.
Mechanisms:
Float Height: I would even allow him to more or less freely choose his float height: jump button would increase it, crouch button would decrease it. (Alternative: it automatically decreases if jump is not pressed). This to allow him to re-enter the stage where the floors are not all at the same level.
Considerations: While this would make him an even more able flyer than Pharah or Echo, he still would be very slow and predictable, thus easy prey for hit-scans.
Counter-measures: Stuns, sleeps, hack, Sigma’s ult all would drop him like a stone during their effect, killing Zenyatta if he’s above an abyss at the time. As would a Reinhardt charge that drags him to a mutual doom.
Bonus fun if Zenyatta would actually have to walk on his feet while hacked, but this probably would be too much animation work.
Earthshatter: This is tricky: I would actually make him immune to it unless he is currently on the ground due to one of the above effects. That would be easiest, and IMHO not overpowered. OTOH, it could be considered unfair to Rein, dunno.