В соответствии с последней спецификацией тег a может содержать внутри div. Для уточнения в html 4.1 нельзя так делать, а вот про html5 — можно, но всё зависит от родителя (всё по той спецификации). Так же стоит отметить, что по правилам хорошего тона, строчные элементы не должны содержать внутри себя блочные, но вот если необходимо сделать блок div ссылкой, то почему бы и этого не сделать.
Резюмируя всё выше написанное, тег a может содержать внутри div, ниже смотрите пример правильного использования:
