CSS
 Computer >> コンピューター >  >> プログラミング >> CSS

CSSツールチップ

ウェブサイトをデザインするときに、ユーザーがサイトの要素にカーソルを合わせたときに、ウェブページに何かに関する追加情報を表示したい場合があります。

たとえば、よくある質問のページをデザインしている場合、Webページにリストされている技術用語に関する追加情報を表示したい場合があります。この情報は、ユーザーが専門用語にカーソルを合わせた場合にのみ表示されます。

ユーザーが要素にカーソルを合わせたときに何かに関する情報を表示するために、ツールチップを作成できます。このチュートリアルでは、例を参照して、CSSでツールチップを作成する方法について説明します。このチュートリアルを読み終えると、CSSでツールチップを作成するエキスパートになります。

CSSツールチップ

ツールチップは、Webページ上の要素に関する情報を追加するために使用されます。ツールチップは、Webサイトのさまざまな場所に表示されます。特に、サイトの作成者が何かを明確にしたり、テキストブロック内の単語に定義を追加したりする場合に役立ちます。

ツールチップの作成に使用されるデフォルトのHTML要素はありません。したがって、ツールチップのように見える要素を設計するには、HTMLとCSSの組み合わせに依存する必要があります。

ツールチップのHTMLコードを書くことから始めましょう。この例では、レシピWebサイトのツールチップを作成します。ユーザーがprepare the baking trayという用語にカーソルを合わせたら 。、ベーキングトレイの準備方法を読者に思い出させるために、ツールチップがテキストとともに表示される必要があります。

ツールチップのHTMLコードは次のとおりです。

<html>

<div style="text-align:center;">
	<p>Instructions for baking:</p>
<div class="tooltip">Prepare the baking tray.
	<span class="contents">Line tray with greaseproof paper.</span>
<div>
</div>

まず、コードで、1つのstyleを持つ

タグを作成しました 属性セット。定義したスタイルは、
タグ内のテキストを要素の中心に揃えます(text-align:center)。次に、

タグを使用して、Instructions for baking:というテキストを含む段落を作成します。 。

参加者の81%は、ブートキャンプに参加した後、自分たちの技術的な仕事の見通しについてより自信を持っていると述べました。今日のブートキャンプにマッチしましょう。

平均的なブートキャンプの卒業生は、ブートキャンプの開始から最初の仕事を見つけるまで、キャリアの移行に6か月も費やしませんでした。

次に、ツールチップが表示される仕切りを作成しました。これにより、prepare the baking trayというテキストが表示されます。 。

タグの中には、ユーザーがprepare the baking trayという用語にカーソルを合わせたときに表示するテキストを含むタグがあります。 。

現在、コードはすべてのテキストを画面に表示しています。これは、ツールチップを作成するためのスタイルをまだコードに適用していないためです。 CSSツールチップの作成に使用するスタイルは次のとおりです。

<html>
  <div style="text-align:center;">
	<p>Instructions for baking:</p>
<div class="tooltip">Prepare the baking tray.
	<span class="contents">Line tray with greaseproof paper.</span>
<div>
</div>

<style>
.tooltip {
	display: inline-block;
	position: relative;
	margin: 50px;
}

.tooltip .tooltiptext {
	visibility: hidden;
 	width: 120px;
	background-color: lightblue;
	color: white;
	text-align: center;
	padding: 10px 0;
	border-radius: 5px;
	position: absolute;
	z-index: 1;
}

.tooltip:hover .contents {
	visibility: visible;
}

CSSツールチップ 上記のコードエディタのボタンをクリックして、HTML/CSSコードの出力を確認します。>

このコードでは、ユーザーがprepare the baking trayというテキストにカーソルを合わせたときにトリガーされるツールチップを作成しました。 。このツールチップには、当社のWebサイトの読者のためにベーキングトレイを準備する方法の簡単なリマインダーが含まれています。

CSSコードがどのように機能するかを分析して、データツールチップがどのように作成されたかを理解しましょう。

.tooltipスタイル

まず、HTMLコードの

タグに適用される.tooltipというスタイルルールを作成しました。このスタイルは、要素をインラインレベルのブロックコンテナとして定義します。つまり、新しい行から開始します。

また、ツールチップの位置を相対位置に設定します。これは、ページがスクロールされてもツールチップが同じ場所にとどまるようにすることを意味します。 CSSポジショニングの詳細については、CSSポジショニングガイドをご覧ください。

最後に、ツールチップテキストの周囲に50ピクセルのマージンを指定しました。これにより、ツールチップテキストとWebページ上の他の要素の間にスペースを作成できます。マージンの詳細については、CSSマージンの初心者向けガイドをご覧ください。

.tooltip.contentsスタイル

次に、.tooltip .contentsというスタイルルールを定義しました。これは、クラス名がcontentsのすべての要素に適用されます。 親クラスの名前はtooltipです。 。

この例では、これはこのスタイルルールがタグに適用されることを意味します。このルールには、実際のツールチップ属性のスタイルが含まれています。

.contentsスタイルでは、visibilityの値を指定します hiddenへのプロパティ 。これは、特に明記されていない限り、ツールチップがユーザーから隠されていることを意味します。

次に、ツールチップの幅(幅)を120ピクセルに設定し、ツールチップの背景色(背景色)を水色に設定し、ツールチップのテキストのテキストの色(色)を白に設定します。さらに、text-alignを使用して、ツールチップ内のテキストを要素の中心に揃えました。

.contentsルールの終わりに向かって、10pxのパディングを設定します。これにより、ツールチップのテキストとその境界線の間にスペースが作成されます。また、15pxの境界半径を設定しました。これにより、ツールチップに丸みを帯びたコーナー効果が与えられます。

次に、.contents要素の位置の値をabsoluteに設定します。 、これは、.contents要素が親要素に対して相対的に配置されることを意味します。この場合、HTMLコードの親要素は

タグです。これは、ツールチップが常にコードの
タグの横に表示されることを意味します。

.tooltip:hover.contentsスタイル

最後に、.tooltip:hover.contentsというルールを定義しました。このルールは、ユーザーがクラス名tooltipの要素の上にマウスを置いたときにツールチップテキストを表示するために使用されます。 。

このルールが実行されると、.contents要素の可視性はvisibleに設定されます 。これは、ユーザーがツールチップにカーソルを合わせると、ツールチップがWebページに表示されることを意味します。

CSSツールチップを配置する

上記の例では、ユーザーがラベルにカーソルを合わせると、テキストの右側にツールチップが表示されます。prepare the baking tray 。ただし、これをカスタマイズして、ツールチップがテキストのさまざまな端に表示されるようにすることができます。

正しい位置

以前のコードでは、ツールチップがテキストの右側に配置されています。ただし、ツールチップを別の方法で表示するように既にスタイル設定していて、ツールチップを正しい位置に戻したい場合は、次のコードを使用できます。

.tooltip .contents {
	top: -5px;
	left: 105%;
}

このCSSルールを以前のコードと組み合わせると、ツールチップがテキストの右側に配置されます。上:-5pxルールは、ツールチップをそのコンテナ要素の中心に揃えます。左:105%ルールは、ツールチップの位置をツールチップの幅の105%だけ左にオフセットするため、ツールチップをコンテナの右側に配置します。

私たちのコードは次を返します:

CSSツールチップ

ご覧のとおり、ツールチップはテキストの右側に表示されます。

左の位置

ツールチップをテキストの左側に表示したいとします。次のコードを使用してこれを実現できます:

.tooltip .contents {
	top: -5px;
	right: 105%;
}

このコードを以前のコードに追加すると、ツールチップがテキストの左側に配置されます。上:-5pxルールは、最後の例で説明したように、ツールチップをそのコンテナーの中心に揃えます。右:105%のルールを使用すると、ツールチップをコンテナの左側に配置できます(つまり、ツールチップの位置をツールチップの幅の105%だけ右にオフセットできます)。

コードが返すものは次のとおりです。

CSSツールチップ

テキストの左側にツールチップが表示されます。

トップポジション

ツールチップをテキストの上に表示したいとします。このタスクは、次のコードを使用して実行できます。

.tooltip .contents {
	bottom: 100%;
	left: 50%;
	margin-left: -60px;
}

私たちのコードは次を返します:

CSSツールチップ

この例では、3つのCSSスタイルを使用して、ツールチップをテキストの上に配置しました。下:100%、左:50%のスタイルでは、ツールチップをツールチップラベルの幅の100%オフセットできます(prepare the baking tray )ツールチップラベルの下部と左側からそれぞれ。

マージン左スタイルを使用すると、ツールチップを中央に配置できます。ツールチップの幅が120pxであるため、左マージンの値を-60px(120pxの半分)に指定しました。これにより、ツールチップがツールチップラベルの中央に表示されます。

一番下の位置

ツールチップをPrepare the baking trayの下に表示するとします。 。ラベル。このコードを使用してこれを行うことができます:

.tooltip .contents {
	top: 100%;
	left: 50%;
	margin-left: -60px;
}

私たちのコードは次を返します:

CSSツールチップ

私たちのコードは、Top Positionと同じスタイルを使用しています 1つの例外を除いた例。この例では、top:100%スタイルを使用します(最後の例で使用したようにbottom:100%ではありません)。このスタイルでは、ツールチップボックスをツールチップラベルの幅の100%オフセットすることができます(prepare the baking tray 。)、ツールチップボックスをラベルの下に配置できるようにします。

ツールチップのフェードイン

ツールチップをデザインするときに、ユーザーがツールチップにカーソルを合わせたときにツールチップのテキストをフェードインするように決定する場合があります。これにより、ツールチップがユーザーの画面に表示されるように設定されている場合に、より見た目に美しいトランジションを作成できます。

フェードインツールチップを作成するために使用できるスタイルは次のとおりです。

.tooltip .contents {
	opacity: 0;
	transition: opacity 2s;
}

.tooltip:hover .contents {
	opacity: 1;
}

このスタイルを最初の例のコードと組み合わせると、フェードイン効果を実現できます。これがどのように機能するかを分析してみましょう。まず、ツールチップの不透明度を0に指定します。これは、ツールチップが非表示になっていることを意味します。

次に、不透明度と2秒の2つの値で遷移プロパティを指定します。 opacity トランジションで適用するCSSプロパティを参照し、2s 移行の期間(秒単位)を指します。

次に、.tooltip:hover .contentsルールを作成します。このルールは、ユーザーがツールチップにカーソルを合わせたときにツールチップの不透明度を1に設定します。

これにより、ユーザーがツールチップにカーソルを合わせると、要素が完全に不透明(非表示)から完全に表示に移行するという効果を実現できます。移行期間を2秒に指定したため、この移行が完了するまでに2秒かかります。

CSSトランジションについて詳しく知りたい場合は、CSSトランジションプロパティのガイドをお読みください。

結論

ツールチップは、Webページに追加情報を表示するために使用されます。 HTMLとCSSの助けを借りて、Webページに追加情報を表示できるようにする見た目に美しいツールチップ要素を設計できます。

このチュートリアルでは、例を参照して、CSSでツールチップを作成する方法、およびツールチップをラベルの左、右、下、および上に配置する方法について説明しました。また、ユーザーがツールチップラベルにカーソルを合わせたときにトリガーされるフェードイン効果を作成する方法についても説明しました。

これで、プロのWebデザイナーのように独自のCSSツールチップの設計を開始するために必要な知識が得られました。


  1. CSSを使用したツールチップの構築

    ツールチップは、追加情報を設定するために使用されます。これは、訪問者がマウスポインタを要素の上に移動すると、Webページに表示されます。 以下は、CSSを使用してツールチップを構築するためのコードです- 例 <!DOCTYPE html> <html> <style> body {    font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;    text-align: center; } .toolTip {   &

  2. CSSでツールチップを作成するにはどうすればよいですか?

    CSSを使用してツールチップを作成するためのコードは、次のとおりです- 例 <!DOCTYPE html> <html> <style>    body {       text-align: center;       font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;    }    .tooltip {