Вы пометили вопрос 'html5', но факт заключается в том, что <h21>
не является элементом HTML, включая HTML5.
Даже в соответствии с разрешающими правилами HTML5 браузеры не обязаны отображать что-либо, что не является распознанным элементом. Тот факт, что некоторые браузеры отображают его, больше не делает его действительным.
Смысл HTML5 не в том, чтобы сделать доступными бесконечные новые элементы. Да, они добавили в спецификацию довольно много элементов, но тщательно их отобрали, чтобы помочь вам придать смыслу документа смысл - т. Е. Теги становятся подсказками, помогающими поисковой системе или подобному боту расшифровать содержание страницы. Добавление собственных произвольных тегов не приведет к этому.
Вы бы лучше придерживались существующих тегов и давали им класс, чтобы определить, как они должны отображаться.