This is correct HTML behavior depending on browser when you have 3 (5, 7, 9, etc) columns. 100% width monitor pixes can't be divided by 3 to equal parts (you will get 33.333333... % width for elements) and monitor can't show half of pixels, this is why browser round width and render this 1 px gap in that way. Some browsers does not show this, some show (Safari for example). This is how works browser rendering engines and this can't be changed.
You can read more about this here: http://cruft.io/posts/percentage-calculations-in-ie/
As a workaround you can set your dark background for entire row settings (for row that contain 3 columns). In this case this white gap will be dark and users will not see it.