На самом деле, я думаю, что проблема в самом шрифте.Я изменил jsfiddle на font-family: monospace, и все это содержалось в сером поле (и в результате было рассчитано правильно).Даже оставив его как исходный шрифт, но изменив образец на «aaa» или «mmmm», он работал отлично.Это просто символ "f" в этом шрифте, который уносит его за вас.
К сожалению, я не знаю атрибута DOM, который объясняет это.Не уверен, что это большой ответ, но у меня нет доступа к комментариям по этому вопросу, и я подумал, что эти результаты могут помочь вам указать верное направление ...