Inspecionei alguns sites e eles têm um sinal de cerquilha (#) no url. O que isso faz?
<a href="#" >Link name</a>
É um "fragmento" ou "âncora nomeada". Você pode usar para vincular a parte de um documento. Normalmente, quando você cria um link para uma página, o navegador o abre na parte superior da página. Mas você vincula a uma seção no meio do caminho, pode usar o fragmento para vincular a esse título (ou qualquer outro).
Se não houver nenhuma <a name="whatever"/>
tag na página, o navegador apenas criará um link para o topo da página. Se o fragmento estiver vazio, ele também será vinculado ao topo da página.
Para um fragmento única <a href="#">Link name</a>
, então isso é apenas um link para o topo da atual página.
Você costuma ver esse tipo de link usado em conjunto com o javascript. O HTML compatível com os padrões requer um href
atributo, mas se você planeja lidar com a solicitação com javascript, "#" serve como um marcador razoável.
... apenas para adicionar algumas dicas úteis extras.
Você pode acessá-lo e alterá-lo
document.location.hash
em JavaScript.Ele pode apontar para uma âncora nomeada (por exemplo
<a name="top"></a>
) ou para um elemento com um id correspondente (por exemplo<div id="top"></div>
).Ver um por conta própria (por exemplo
<a href="#" onclick="pop()">popup</a>
) geralmente significa que um link está sendo usado exclusivamente para executar o JavaScript. Esta é uma prática ruim.Qualquer
a
elemento deve ter umhref
que aponta para um recurso válido. Se não existir, considere usar outro elemento, comobutton
.fonte
#
indica um link para uma âncora.Achei que também mencionaria outra coisa:
Usar '#' como href para um link que ativa o JavaScript é ruim porque rola a página para o topo - o que provavelmente não é o que você deseja. Em vez disso, use
javascript:void(0)
.fonte
javascript:void(0)
nenhum dos dois - use umbutton
se não for um link.O sinal de libra (
#
) indica para localizar uma âncora na página. Por exemplo, se você incluir isso em algum lugar da página:ou, mais recentemente:
e depois você clicar em um link da página que contém o href
#foo
, ele irá navegar até a âncora com o nome oudiv
com o idfoo
.No entanto, se você tiver apenas o href
#
, ele o levará ao topo da página.fonte
Isso leva de volta à própria página. É freqüentemente usado com links que realmente executam algum JavaScript.
fonte