does sprite zero hit when sprites are not visible?
No
Sprite zero hit happens as the pixels are actually rendered -- if the sprite pixels are not being rendered, the sprite can't be hit. Both BG and sprites must be enabled -- and for a collision to occur on the left-most 8 pixels of a scanline, the clip option for both BG and sprites must be off.
And it can't occur on the last pixel of a scanline (x=255).
But it can occur if the sprite and background are drawn with colors whose palette entries are the same (e.g. black) or if the sprite is drawn behind the background.