I firstly used the explode method at the top of the page. This was really good, and very neat, BUT it put parent and child categories on the same level (visually).

I then used the

.catlist li {
width:50%;
float:left;}

method. This also works well, but this time, although I have hierarchical links which appear to be in 2 columns - because technically they are not in 2 actual columns as per the first method, they also do not display exactly right either.

If, for example, I have :

Parent 1

Parent 2

Child

Child

Child

Parent 3

Parent 1 will appear in the left faux column, 2 in the right, and 3 in the left again. However, Parent 3 will display after the bottom of 2, so on the left there will appear to be a big vertical gap between 1 and 3.

So, this method only really works if you have a fairly even amount of child cats to each parent.

The best solution would be the first explode method, with hierarchical display of the links. Is this possible though? Or do you have to decide which compromise to take.....ie:
2 columns, but all links displaying as if parents
or
hierarchical links that are really in faux columns and may have big gaps between the vertical heights (visually).

Not sure if that makes sense - difficult to explain. I really hope there is an answer to get the best of both methods though?