Você pode usar? Pode, mas não quer dizer que você deva. As tags vem de uma especificação que todos os navegadores seguem (ou pelomenos deveriam seguir), e é feita para garantir a consistência entre as várias engines de renderização que existem por aí.
A partir do momento que você utiliza uma tag que não existe, você tá dando um tiro no escuro pois o comportamento é "desconhecido", já que diferentes navegadores/engines podem apresentar seu conteúdo (ou talvez até sumir com ele) de diferentes maneiras.
E por falar em padrões, se realmente quiser usar tags extras, já existe maneiras de você literalmente criar a <sua-propria-tag />
dentro da página usando "custom elements". Sintáticamente é bem parecido com React antes dos functional components
.
Ref: https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements
Muito interessante essa questão dos elementos customizáveis, ainda não tinha ouvido falar sobre criar elementos prórprios sem o uso de React. Mas a verdade é que, sinceramente, não acho que seja nescessário pra um caso tão simples quanto uma pequena estilização diferente que precisava ser feita no próprio arquivo html.
E não, não acho que deveriam ser utilizadas tags inexistentes, mas simplesmente por um id ou classe no elemento. Acho que seria o caminho mais rápido pra solucionar o problema proposto.
Parabenizo você pelo caminho proposto, devo inclusive utilizá-lo num futuro breve. Mas a argumentação de que algumas engines podem apresentar resultados inesperados não poderia proceder, pois uma vez que a W3C não tenha determinado um pattern essa suposta tag deve conter resultado totalmente nulo, do contrário haveria falha na própria engine que apresentasse o resultado inesperado.
Obs: quanto à extensão do arquivo, o que importa mesmo é como o navegador está interpretando o conteúdo. Se o navegador conseguir inferir (caso abra localmente) ou o servidor responder que o content-type
é um text/html
, o endereço pode terminar até com .png
que o navegador vai renderizar como uma página normalmente.