Короче говоря, это недействительный HTML. Вероятно, он не должен быть действительным, и, как отмечает Ричард, интересно, что он был рассмотрен в HTML5
Попробуйте запустить тот же код, что и в HTML5. Определение HTML5 исправило это, выдав ошибку:
The element input must not appear as a descendant of the a element.
Это потому, что вы отображаете две кнопки в одном месте, поэтому какое действие кнопки должно иметь предпочтение? По сути, вы скрываете одно действие кнопки от пользователя, что так же хорошо, как отсутствие второй кнопки вообще.
Подробнее об этом можно узнать в HTML: Справочник по языку разметки