【HTML】ツールチップの基本|title属性を使ったホバー時のヒント表示
HTMLのtitle属性を使ったシンプルなツールチップ表示から、CSSとJavaScriptを使ったカスタムツールチップの作成方法まで解説します。
🔹 基本コード
<p>マウスをこの<span title="追加情報">部分</span>に合わせてください。</p>
💻 完全動作コード(コピペするだけで動作確認可能)
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>ツールチップデモ</title>
<style>
body {
font-family: 'Segoe UI', Meiryo, sans-serif;
padding: 20px;
text-align: center;
line-height: 1.6;
}
.tooltip-demo {
color: #1e88e5;
font-weight: bold;
cursor: help;
border-bottom: 1px dashed #1e88e5;
padding-bottom: 1px;
}
.tooltip-demo:hover {
color: #0d47a1;
}
.container {
max-width: 600px;
margin: 0 auto;
padding: 20px;
background: #f8f9fa;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
</style>
</head>
<body>
<div class="container">
<h2>ツールチップ動作デモ</h2>
<p>この<span class="tooltip-demo" title="ツールチップが表示されています!追加の説明文がここに出ます。">青色のテキスト</span>にマウスを乗せてみてください。</p>
<p>このデモはHTMLのtitle属性を使った標準的なツールチップの動作を確認できます。</p>
</div>
</body>
</html>
🧩 ツールチップの基本特性
title属性を使ったツールチップは、ブラウザ標準の機能でJavaScriptなしで実現できます。マウスを要素に乗せて約1秒後に表示され、マウスが離れるかクリックすると消えます。
メリットとして、すべての主要ブラウザでサポートされており、スクリーンリーダーでも読み上げられるためアクセシビリティに優れています。ただし、デザインのカスタマイズはできません。
🎯 カスタムツールチップの作成
<style>
.tooltip {
position: relative;
display: inline-block;
border-bottom: 1px dotted black;
}
.tooltip .tooltiptext {
visibility: hidden;
width: 120px;
background-color: #555;
color: #fff;
text-align: center;
border-radius: 6px;
padding: 5px;
position: absolute;
z-index: 1;
bottom: 125%;
left: 50%;
margin-left: -60px;
opacity: 0;
transition: opacity 0.3s;
}
.tooltip:hover .tooltiptext {
visibility: visible;
opacity: 1;
}
</style>
<div class="tooltip">ホバーしてください
<span class="tooltiptext">カスタムツールチップ</span>
</div>
CSSとHTMLのみでカスタムツールチップを作成できます。デザインの自由度が高く、アニメーション効果も追加可能です。ただし、JavaScriptを使わないため、表示位置の動的調整には限界があります。
📚 実践的な活用例
フォーム入力欄のヒント表示: <label>パスワード: <input type="password"><span title="8文字以上で英数字を含めてください">?</span></label>
用語の説明: <p><span title="HyperText Markup Language">HTML</span>はウェブページを作成するための言語です。</p>
これらの例のように、ユーザーインターフェースの使いやすさを向上させるために効果的に活用できます。
⚠️ 注意点:ツールチップとリンクの違い
純粋なツールチップ機能
この記事で紹介している方法はリンク機能を持たない純粋なツールチップです。<span title="...">は:
- クリックしてもページ遷移しない
- あくまでホバー時の情報表示専用
- 視覚的な装飾(色変化など)はCSSによる見た目の工夫
<!-- リンク機能なし --> <span class="tooltip" title="説明文">ホバー対象</span> <!-- リンク機能あり --> <a href="page.html" title="説明文">クリック可能</a>
リンクと組み合わせる場合
ツールチップ付きリンクを作成する場合は、<a>タグにtitle属性を追加します:
<a href="#" class="tooltip-link" title="詳細ページへ移動します">
クリック可能なリンク
</a>
<style>
.tooltip-link {
color: #0066cc;
text-decoration: underline;
}
</style>
コピーしました!