У вас просто значения некоторые возвращаются с пробелами на конце, или ищите в скрипте откуда лезут, или до возвращения пропускайте значения через trim()
нет, дело определенно в них, потому что у вас выравнивание текста по центру идет, поэтому пробел в конце строки будет сдвигать ее начало относительно предыдущих. Но странно, что в DOM в самом значении нет никаких пробелов, а выделить его на самой странице я могу. Если такой вариант устроит то можно прописать временный хак для .dispay {text-align:justify; width: 146px; margin: 0 auto;}
версия с пробелами подтверждается и если присвоить блоку white-space: pre, то есть перенос текстас учетом пробелов. Все сразу выравнивается, но там где вылезает этот призрачный пробел (или перенос строки, или еще какой-то мусор) возникает лишняя строка
align-left поможет, но все значения прижмутся к левой части блока, поэтому вам нужно и длину его контролировать, то бишь если просто взять мои стили и вместо justify поставить left, то да, все будет ок, если только выравнивание прописать, то делу не поможешь, все улезет в самый левый край экрана