Like you can see in my Wiki http://www.wecowi.de/view/Spezial:BrowseData the displayed pages are not in there cols but in two cols and two rows. I think the output should be made with a table and not with float.
I think a four column layout would work great. One column at the right with the categories with a rowspan through the whole table. Then the header in a colspan of 3. And the the output in thre cols.