SwiftHTML & CSSSolidityDesenvolvimento de JogosSolana/Rust
11.03.2025

Diferenças Entre target="_blank" e target="_new" no HTML: Um Guia

Resposta Rápida

Para abrir links em uma nova aba do navegador, recomenda-se usar target="_blank". O atributo target="_new" não está em conformidade com os padrões e pode levar a um reaproveitamento indesejado de abas. Veja como deve ser no código:

<!-- Bom exemplo: abrindo um link com segurança em uma nova aba -->
<a href="https://example.com" target="_blank" rel="noopener">Visite o Site Exemplo</a>

Portanto, é aconselhável escolher target="_blank" para abrir links externos e evitar o não padrão target="_new". Para aumentar a segurança e o desempenho, utilize rel="noopener" e rel="noreferrer".

Segurança e Otimização: O Papel do "noopener" e "noreferrer"

Ao usar target="_blank", é importante considerar a segurança e a otimização. O atributo rel="noopener" ajuda a proteger o seu site bloqueando o acesso da nova aba à sua página através de window.opener, minimizando tais vulnerabilidades.

Além disso, rel="noreferrer" proporciona segurança extra garantindo anonimato e aumentando a velocidade de carregamento da página ao impedir a transferência do cabeçalho HTTP Referer.

Exemplo de uso seguro:

<!-- Segurança: Confiabilidade comparável a um banco suíço. Excelente velocidade de carregamento da página. -->
<a href="https://example.com" target="_blank" rel="noopener noreferrer">Visite o Site Exemplo</a>

Assim, entender e utilizar esses atributos protege contra vulnerabilidades, especialmente quando o conteúdo gerado pelo usuário inclui links externos.

Um Jogo de Nomes: Entendendo o Comportamento do Navegador com Alvos Nomeados

O HTML possui nomes reservados especiais para alvos. "_blank" é um deles. Quando você atribui target="NomeDaJanela", o navegador procura uma janela ou aba com esse nome e, se encontrada, a utiliza. Se não, cria uma nova.

"_new" é interpretado pelos navegadores como um alvo nomeado:

<!-- Encruzilhada: Pode abrir uma nova janela a seu critério -->
<a href="https://example.com" target="_new">Visite o Site Exemplo</a>

Essa abordagem pode resultar em um comportamento ambíguo, uma vez que "_new" não é tratado como um nome especial ao contrário de "_blank", "_self", "_parent" e "_top". A solução é simples: evite usar target="_new" para previsibilidade e facilidade de navegação.

Textos Sagrados: Nomes de Alvo Reservados e Padrões HTML

A especificação HTML descreve detalhadamente os nomes de alvos reservados e seu comportamento, garantindo sua padronização e universalidade:

  • "_blank": Abre uma nova aba ou janela a cada clique.
  • "_self": Abre o conteúdo na janela ou quadro atual.
  • "_parent": Navega para o quadro pai.
  • "_top": Exibe o conteúdo em modo de tela cheia.

Para a formatação de links mais eficaz, utilize esses padrões e a especificação HTML5.

Escutando Especialistas: Opiniões de Especialistas sobre Atributos "rel"

As opiniões de especialistas, como as de Matthias Bynens e Jake Archibald, têm um valor particular. Seus escritos sobre os atributos "rel" são considerados leitura essencial para qualquer desenvolvedor web e servem como um excelente guia sobre segurança e melhores práticas.

Visualização

As diferentes opções para o atributo target podem ser visualizadas como portas em uma casa:

  • target="_blank": 🆕🌐 Cada porta leva a um novo cômodo.
  • target="_new": 🔁🌐 Todas as portas levam ao mesmo cômodo.

Assim, target="_blank" leva você para um lugar novo de forma confiável, enquanto com target="_new", você pode acabar em um espaço familiar.

Recursos Úteis

  1. MDN - Elemento Âncora
  2. Atributo target no HTML - W3Schools
  3. Padrão HTML - Alvo de Hiperlinks
  4. Quando usar target="_blank" - CSS-Tricks
  5. Frames em Documentos HTML - W3C
  6. WebAIM: Links Hipertextuais - Criando Links Acessíveis
  7. Posso Usar... Tabelas de Suporte para rel=noopener

Video

Did you like this article? Rate it from 1 to 5:

Thank you for voting!