CSSで下部に表示されるツールチップを作成する方法
テキストの下側(下部)にツールチップを表示させたい場合は、CSSの top プロパティを使用します。ツールチップの位置を top: 100% と指定することで、親要素の直下に配置できます。
以下のコードでは、マウスカーソルをテキストに重ねると、その下にオレンジ色のツールチップが表示される仕組みを実装しています。
実装のポイント
- ツールチップ本体(
.mytext)は初期状態でvisibility: hiddenにより非表示にしておきます。 - 親要素(
.mytooltip)にposition: relativeを指定し、ツールチップをposition: absoluteで絶対配置します。 :hover擬似クラスを使い、マウスオーバー時にvisibility: visibleへ切り替えて表示します。
サンプルコード
<!DOCTYPE html>
<html>
<style>
.mytooltip .mytext {
visibility: hidden;
width: 140px;
background-color: orange;
color: white;
z-index: 1;
top: 100%;
left: 60%;
margin-left: -90px;
text-align: center;
border-radius: 6px;
padding: 5px 0;
position: absolute;
}
.mytooltip {
position: relative;
display: inline-block;
margin-top: 50px;
}
.mytooltip:hover .mytext {
visibility: visible;
}
</style>
<body>
<div class = "mytooltip">ここにマウスカーソルを合わせてください
<span class = "mytext"> ツールチップのテキスト</span>
</div>
</body>
</html>このコードをブラウザで開き、テキスト部分にマウスカーソルを合わせると、下方向にツールチップが表示されます。表示位置やデザインは、top・left・background-color などの値を調整することで自由にカスタマイズ可能です。
-
CSSでツールチップの右側に矢印を表示する方法
CSSのleftプロパティを活用することで、ツールチップの右側に矢印を表示させることができます。実装のポイント矢印は::after疑似要素とborder(境界線)を組み合わせた定番テクニックで作成します。ツールチップ本体の左端(left: 100%)に疑似要素を配置し、4辺のうち左側のボーダーだけに色を指定することで、三角形の矢印として描画されます。残りの3辺はtransparent(透明)にしておくのがポイントです。サンプルコード以下のコードを実行すると、テキストにマウスカーソルを重ねたときに、右側へ矢印が付いたツールチップが表示されます。<!DOCTYPE html> <
-
CSSでツールチップの上部に矢印を追加する方法
ツールチップの上部に矢印を追加するには、CSSのbottomプロパティを活用します。:after疑似要素と組み合わせることで、画像を使わずに三角形の矢印を簡単に作成できます。 実装例 以下のコードを実行すると、上部に矢印が付いたツールチップを表示できます。テキストの上にマウスカーソルを重ねると、ツールチップが現れる仕組みです。 <!DOCTYPE html> <html> <style> .mytooltip .mytext { &nb