html puede ser (en realidad duerma realmente importa):
<div class="3col_vert">
<div>a</div>
<div>b</div>
<div>c</div>
<div>d</div>
...
</div>
En javascripts (ejemplo de jQuery en particular), lo que tiene que envolverlos con cols, por lo que el HTML resultante (después de la manipulación de Javascript) se convertirá en:
<div class="3col_vert">
<div class="col_left">
<div>a</div> ...
</div>
<div class="col_centre">
<div>e</div> ...
</div>
<div class="col_right">
<div>g</div> ...
</div>
</div>
Jquery a mainpulate será:
var vert_divs = $(".3col_vert div");
// Remove them from parent
$(".3col_vert").empty()
.append("<div class='col_left'></div>") // append the wrapper cols to parent
.append("<div class='col_center'></div>")
.append("<div class='col_right'></div>");
// Now place them to the wrappers
var totalDivs = vert_divs.length; // count number of match divs
vert_divs.each(function(i) {
if (i < totalDivs/3)
$(this).appendTo(".3col_vert div.col_left");
else if (i<totalDivs * 2/3)
$(this).appendTo(".3col_vert div.col_center");
else
$(this).appendTo(".3col_vert div.col_right");
});
El c ode arriba no está muy optimizado (estoy seguro de que puede usar muchos algoritmos mejores), pero la idea está allí, se usa javascript para manipular el html en algo como el anterior, colocando el primer 1/3 en la columna de la izquierda, segundo 1/3 al centro, y el resto a la derecha. El último trabajo es usar CSS para convertirlos en 3 columnas, que no voy a tratar aquí, pero hay montones de tutoriales, por ejemplo, this one es uno de esos ejemplos.
Usted ha hablado de "navegador". Creo que pure CSS no es posible. Pero ciertamente puedes hacerlo javascript. ¿También estás buscando opciones en javascript? – xandy
Claro, estoy abierto a Javascript. –