Mam problem z raczej dość prostym skryptem -> mamy liste <ul> w środku kilkanaście elementów li. lista wystylowana na wygląd zakładake ale mniejsza o to

Przypuśćmy, że mamy 4 elementy w rzędzie i 10 elementów listy. Ustawią się w następujący sposób (x to w przykładzie jeden element)
X X X X
X X X X
X X
chcę zrobić aby było to ustawione o tak:
X X
X X X X
X X X X
Wyliczam modulo 4 z elementów listy i widać po ilu elementach będę musiał wstawić odpowiednio wystylowany element listy, aby wyrównał pierwszy rząd. I tutaj jest problem. Wrzucam to co zrobiłem, ma ktoś jakiś pomysł jak wstawić w odpowiednim miejscu childnode dla ul?
$(document).ready(function() { var ul = document.getElementById("cat_items"); var liNodes = []; for (var i = 0; i < ul.childNodes.length; i++) { if (ul.childNodes[i].nodeName == "LI") { liNodes.push(ul.childNodes[i]); } } var numNodes =liNodes.length % 4; });
pozdrawiam!