ИМХО, вы должны включить nbsp для других пустых DIV, если вы хотите, чтобы они действительно отображались во что-то.
На "теоретической" заметке .. браузер не должен показывать что-либо, если нет содержимого. Весь смысл nbsp - указать пустое место. Это и здравый смысл, и (я считаю) стандарт.
С практической стороны ... у вас есть три варианта. Один из них - оставить без внимания, зная, что вы получите непредсказуемые результаты. Это, вероятно, самый простой код. Другой способ - всегда включать nbsp, либо всегда помещая nbsp в конце div, либо проверяя наличие пустых значений, и добавляя nbsp, если он пуст. Третий - тестировать браузер и вставлять nbsp при необходимости.