The reason for the white lines is because of the way anti-aliasing works.These are the anti-aliasing artifacts and you can't do much about it.
For example , say you have 2 black rectangles. The left one stops at 5.5 pixel and right one starts at 5.5.Ideally , you would expect both of them to get merged and no line gap. But in browsers the way it works is, each shape is rendered on its own. The left one at 6 gets blended over the black with an opacity of 50% and when it renders the right one , the column at 6 again gets blended over the black one with an opacity of 50% which makes it now a black with opacity of 75% , hence you see those lines. This is the issue. You can solve the problem by making things overlap to always hit the pixel boundaries.
Regards,
Sudeshna