Почему div вылетает за пределы a?
a > div
О боже, зачем так?
https://stackoverflow.com/questions/3092610/div-in...
UPD: вам же пытаются объяснить, что оборачивать такие блоки тегом а - плохо.
Браузер видит первый закрывающий тег </a> и обрабатывает разметку по нормальному, а не как у вас.
<div onclick="window.open('http://google.com, '_blank');"></div>
так наверно правильнее