C'è qualche situazione in cui vi è una buona ragione per usare un ancoraggio un elemento senza un attributo href?

1

Recentemente mi sono imbattuto in un sito web che conteneva un elemento di ancoraggio senza un attributo href.

Ho immediatamente pensato che fosse stupido, ma potrebbe esserci una situazione reale in cui avere un'ancora senza href ha senso?

    
posta user227435 06.05.2016 - 18:47
fonte

4 risposte

6

Ai vecchi tempi, hai usato <a name="whatever"> se volevi un altro link per passare a un particolare punto sullo schermo. Al giorno d'oggi (per molto tempo effettivamente) usiamo l'attributo "id".

    
risposta data 12.05.2016 - 21:16
fonte
4

Potresti immaginare che qualche codice Javascript stia cambiando dinamicamente il DOM per aggiungere quell'attributo href= mancante dinamicamente al runtime.

    
risposta data 12.05.2016 - 20:51
fonte
1

W3Schools.com dice:

In HTML 4.01, the tag could be either a hyperlink or an anchor. In HTML5, the tag is always a hyperlink, but if it has no href attribute, it is only a placeholder for a hyperlink.

Mi raccomando di non utilizzare un tag <a> senza href come segnaposto. È preferibile utilizzare i tag <u> in modo che i collegamenti interrotti presentino il nero sottolineato anziché il solito colore del collegamento in modo da poter vedere almeno quali collegamenti sono interrotti quando si guarda la pagina. Oppure compila <a href="to-do"> in modo che un verificatore di link possa segnalare i collegamenti interrotti.

    
risposta data 06.05.2016 - 21:35
fonte
-1

No. Non dovresti mai usare il tag di ancoraggio senza attributo href.

Sono totalmente d'accordo con la risposta di Glen Peterson. L'elemento di ancoraggio in HTML viene sempre utilizzato con l'attributo href. E, senza href, l'elemento funge semplicemente da segnaposto. Ma anche io non suggerisco di usare senza href solo come segnaposto.

Inoltre, l'uso dell'elemento anchor senza href può rallentare il browser. Quindi, ti consiglio di usare quello che denota un frammento di pagina.

E, in JQuery, puoi usare quanto segue:

.click(function(event){
event.preventDefault();
// Click code here...
});
    
risposta data 02.04.2018 - 13:06
fonte

Leggi altre domande sui tag