Contrary to what you might think, it is possible to paint floors that are covered in hard tile like ceramic or porcelain. It just takes a little more preparation work and patience than a regular paint job, because of the challenge of getting the paint to stick to the non-porous tiles. Buffing the tile surface with a sander, using a good sealing primer and sealing it all in with a good floor-grade polyurethane gloss will help your floor paint stay put under foot traffic.
Step One
Go over the entire floor with a belt sander, loaded with 80-grit sandpaper, to clean and dull the surface. You don't have to try to sand beneath the glaze of the tiles, but rather just buff off as much of the shine as you can. Vacuum up the dust thoroughly.
Step Two
Starting in a far corner of the room, spread on a layer of sealing primer, using a brush. Brush it completely over the tiles and grout lines together, in a thin, even coat, going all in one direction. Let it cure overnight.
Step Three
Brush on a thin first layer of floor paint, starting at the same far corner and using the same procedure as with the primer. Don't worry if the floor paint doesn't completely cover the primer; just keep the layer smooth, flat and free of drips. Let it dry overnight.
Step Four
Apply a second coat of floor paint in the same manner as the first. After it dries, apply a third coat, if desired.
Step Five
Gently mix your polyurethane (don't shake it, as this will cause bubbles). Brush it on from the same far corner as you did with the primer and paint. Again, keep the layer thin and even. Be on the lookout for the formation of bubbles, and brush them out. Let it dry overnight.
Step Six
Buff out the polyurethane by hand with 220-grit sandpaper, using quick, light strokes to dull the shine. (This allows the next coat of gloss to adhere properly). Wipe away the dust.
Step Seven
Brush on a second coat of polyurethane in the same manner as the first. Let it dry. Buff with sandpaper and apply a third coat. Let it cure for two days before using the floor.