learning: the div that masks the background should be a childless parent otherwise the child will not be opaque and you can see through it