Ciao, (giusto per la cronaca) col solo css esistono alcuni metodi ma, o non sono cross-browser o sono poco versatili.
Esiste la proprietà text-justify che fa esattamente ciò che chiedi. Peccato che funzioni solo su IE.
Esiste la proprietà letter-spacing che è supportata dai vari browser ma a cui puoi solo assegnare una dimensione fissa. Questo rende l'operazione poco pratica. Inoltre l'ultima lettera viene "estesa" come le altre e, ad esempio, nei link si può notare la sottolineatura che va oltre la fine della parola.
codice:
<!DOCTYPE HTML>
<html>
<head>
<title>Esempio</title>
<meta charset="utf-8">
<style type="text/css">
/* solo IE */
#menu{
border: 1px solid black;
width: 30%;
text-align: justify;
text-justify: distribute;
}
#menu a>div:after {
content: "";
display: inline-block;
width: 100%;
}
/* cross-browser ma con larghezza fissa */
#menu2{
border: 1px solid black;
width: 30%;
}
#menu2>a:nth-child(1){letter-spacing:1em;}
#menu2>a:nth-child(2){letter-spacing:2em;}
</style>
</head>
<body>
<div id="menu">
<a href="#"><div>menuuuu1</div></a>
<a href="#"><div>menu2</div></a>
</div>
<div id="menu2">
<a href="#"><div>menuuuu1</div></a>
<a href="#"><div>menu2</div></a>
</div>
</body>
</html>
Probabilmente si riesce a trovare una soluzione valida (o più adeguata) con l'utilizzo di javascript/jquery.