We have a heating vent located on the floor close to a shower. Occasionally when the floor gets wet it can act like a drain and it causes issues on the ceiling of the floor below. I could use caulk to permanently seal the vent cover to the floor but I don’t want to do something permanent like that. What are some other options?
I would first try to prevent that much water from getting out of the tub / shower. As a back up possibly a 1/8” bead of silicone around the perimeter of the register. Even tile floors can rot out the framing members that support the floor so preventing the water from getting out would be my first priority.
Don't caulk it, that's just adding to the problem. Caulk is messy, and in this kind of higher traffic area it's not going to last very long, so it's only a matter of time (probably very little time) before the water finds a way around it. The best way to fix this is to move the floor register up into the wall where it belongs, but doing that would be pretty involved and probably more hassle than you want to deal with.
Instead of caulk, I would get some silicone gasket material and use that to create a seal between the register and the tile. It might take some searching, but you should be able to find some that is the right thickness (maybe 1/8" or 1/16" ??) and has a permanent1 adhesive backing on it. Carefully apply that to the bottom edges of the vent cover and tighten it down enough to compress the gasket. It will be much less messy than trying to caulk it, and you'll still be able to remove the vent if needed (like when you drop something valuable down there).
1: make sure it is labeled as permanent, and follow the directions to prepare the surfaces. I have some permanent Velcro on my kitchen floor that's been there for years, and it's not going anywhere too soon...
Put a towel over the vent while you use the shower/bath, then hang it to dry after the water is turned off. Kind of a pain but it beats the alternative.
Terrible design, but that's nothing new for home construction. There is always a reason why things are the way they are, but it is usually not a good reason.
To stop direct intrusion (not just side seeping) you can buy magnetic register diverters that are clear. They would sit on top of the vent and you could direct them at the wall, where it would deflect any water dripped straight down.
As to side seeping, if you're looking to avoid caulk you can buy closed-cell foam weatherstripping (find a thin variety). Not the greatest over time (water will erode the adhesive) but easily reapplied and you can still remove the vent as needed.
Make a bath mat that surrounds the register. Use two hand towels for the long sides and two washcloths (face cloths) for the short sides and sew this into a bath mat with a hole in the center.
Or cut a hole in a small to medium towel or a bath mat.
Or just lay a hand towel next to and between the register and the tub.