Потому что div
не вкладывается в p
UPD: точнее немного не так: считается, что тег p
закрылся перед следующим открывающим div
или p
или любым другим блочным элементом. А дальше у Вас получается висит закрывающий тег </p>
, у которого нет начала.
Вам даже jsfiddle ошибку красным (!) выделяет.