Вы не устанавливаете ширину таблицы, поэтому она будет настолько малой, насколько это возможно, чтобы вместить содержимое.
Попробуйте также поставить "Hi" в div (или span) с плавающей запятой влево.Теоретически это должно работать.
Возможно, вы захотите поместить обе стороны в промежутки, подумайте об этом, так как div по умолчанию соответствует размеру их родителя (-border, margin и padding).
Надеюсь, это поможет.
С уважением,
Ричард
Редактировать: Фактический ответ на это заключается в том, чтобы установить позицию правостороннего div на абсолютное значение,высота / ширина до 16px, сверху и справа до 0. Также удалите float: right
.(Я оставил свой первоначальный ответ там, чтобы а) комментарии имели смысл и б) любой, кто прочитает это в будущем, знает, что оригинальный ответ не сработал).