Je voulais jouer avec un composant qui serait space to fit mais pas mal de bugs liés au fait que les browser mettent le letter-spacing entre le lettres mais aussi après la dernière lettre. Donc ma formule devient pour une node hq sans enfants:
hq.style.margin = hq.style.padding = ‘0’;
var spana = document.createElement(‘span’);
spana.appendChild(document.createTextNode(hq.firstChild.nodeValue));
hq.replaceChild(spana,hq.firstChild);
hq.style.letterSpacing = ‘0’;
hq.style.textAlign = ‘center’;
v = (hq.offsetWidth – hq.getElementsByTagName(‘span’)[0].offsetWidth) / (hq.getElementsByTagName(‘span’)[0].firstChild.nodeValue.length);
hq.style.letterSpacing = ~~(v)+’px’;
hq.style.marginRight = ~~(-1*v)+’px’;
Merci.