in reply to cgi checkbox_group in table

Whenever you're doing things like this with CGI.pm HTML commands, you need know what you want your final HTML code should look like first. In this case, it's difficult to see out of context, but certainly things like having 'th' tags outside of a 'tr' at the top there will confuse a browser. Try constructing your 'ideal' HTML layout manually, then comparing the results from your script.
Using tables for layout can often get messy, and I would always prefer a pure-CSS layout, but even just adding a CSS class to the table would mean that you could then experiment with layouts (.mytable td {text-align:left;} etc.) without changing your perl code.
From what it looks like you're trying to achieve though, I think defining a style for the checkbox group and then playing with *its* layout would serve you better - you could then use the inbuilt group labels and size/align them as you want, rather than have a bunch of code to print them separately.
Cheers
Ben