Columns are not easy to get right in all browsers. This is a major deficiency of CSS and especially of browser's implementation of CSS, especially, cough, cough, Explorer, cough, cough.
You need to invest a good amount of time into understanding this. The good news is, you only need to invest this once.
There is an enormous list of methods at
incutio.com. I hope you will find this an invaluable resource.