if you designate a garbage zone on a hatch cover which is on a hole, or if you designate a garbage zone on a tile next to a hatch cover which is on a hole, the dwarves dump the items directly onto the hatch cover, not "on the floor nearby"
This turns out to be only partly correct, after further testing.
If I dig a hole, put a hatch cover on it, declare a dump zone either on it or next to it, and dump things there, the dwarves dump them onto the hatch cover.
If I link a lever to the hatch cover, and pull the lever, all the items fall down into the hole. If I pull the lever again, the hatch closes.
If I dump
more items after that, with the dump zone next to the hatch, the items are placed on the ground (in the dump zone), rather than on the hatch. I guess a hatch that's linked to a lever (and closed) acts different from a freely openable-and-closable hatch, with respect to dwarves deciding where to dump crap.
If the dump zone is directly on the hatch, and the hatch is linked to a lever and closed, then the items are once again dumped directly onto the hatch.
If the dump zone is next to the hatch, and the hatch is levered open, the items are thrown into the hole.
So, the only scenario I've found where the items end up "on the floor nearby" is when the dump zone is next to the hatch, and the hatch is linked to a lever and closed.