◆ href 属性なしにすることが多いけど一般的な方法はなんだろう

久々に
<a href="javascript:void(0)"></a>

というコードを見かけました

まだあったんですねー


でも考えてみたら何もしない a タグって今はどう書くんだろう……

適当な href にしておいて JavaScript で無効化してるだけってイメージが強いです
そもそもリンクしないボタンなら input や button タグで表現してる方が多いようにも思えます


適当といっても
<a href=""></a>

だとリンクにフォーカスしたときのナビゲーションが自分自身の URL になります
リンクしないのにナビゲーションが出てくるだけでも気持ち悪いですし ミドルクリックしたときや右クリックから新しいタブで開いたときに変な挙動です

似たもので
<a href="#"></a>

ページ内リンクするものでページ遷移が起きずにスクロールしますが JavaScript でキャンセルしてるなら上の空文字と一緒です
ナビゲーションに # がついてるくらいの違いです


私がたまに使ってる方法で 空文字でなく属性すらなくしてしまうと a タグの挙動をしなくなるというもの
<a>abc</a>

と書くと span で囲んだときみたいに a タグ感が全くなくなります
文字色も下線もナビゲーションもありません

もともと a タグはリンクするだけじゃなく name 属性でリンクされる場所を示すこともできましたし(HTML5 だと廃止になってたはず) href なしはリンクの UI にしないのだと思います

たいてい a タグに文字色など CSS で設定しているのでデフォルトで色や下線がつかなくなっても大したことはない場合がほとんどです
忘れがちなのが cursor:pointer をつける部分


けっこういい方法かなー って思ってますがあんまりよく見る方法でもこうすればいいよって聞く方法でもないと思います
最近はどうするのが良いんだろ





話は変わってナビゲーションでふと思ったこと

みんなどれくらいナビゲーションみてるんだろう??


なんかこういういかにも怪しそうなリンクを書いてどれくらいの人が押すのか調べてみたいです
<a href="javascript:web.post(document.cookies)">あなたの運勢は……</a>

日本語だけみて おみくじかなってポチッといくのか

javascript のところに書いてる cookie を送信しそうな関数名を見て怖くて押さないのか

cookie は document.cookies じゃなくて document.cookie だし だいじょぶでしょ とやっぱり押してしまうのか

document.cookies がデフォルトは undefined でも document.cookies = ○○ で何か入ってたら と裏を読んで押さないのか

とりあえずソースみる と答えをみてしまうのか


きっと本当に個人データを送っていたとしても一番目が多いんでしょうね……