I see this quite alot. You shoot a guy and a splash of blood comes off them, but no hit marker shows up, and the enemy does not take any damage.
I am guessing that the unit I am seeing on my screen (and shooting at) is not in sync with the server and so the unit is not actually in the position I see them in. As a result my game generates the visual effects of the weapon impacting them, but the server does not register it as a hit and so no actual damage is done.
It also happens in melee but alot less frequently. Usually when the enemy is just in range of your swing. On your screen they are in range, so you see and hear the impact of the weapon, but no hit marker registers and the enemy does not die/stagger from the impact