TailWindCSSとAlpineJSを使用したツールチップ
4422 ワード
このチュートリアルでは、TailWindCSSとAlpineJjsを使用してツールヒントを作成し、Laravelコンポーネントにロジックをカプセル化します.チュートリアルの最後に、以下のようなツールヒントがあります.
さらに開始する前に、AlpineJjsとTailWindCSSと共にインストールされたLaravelプロジェクトがあることを確認してください.これらの依存関係の両方を自動的にインストールするには、Laravelプロジェクトで風をインストールすることをお勧めします.
私たちの目的は、ヘルプのアイコンを作成し、ユーザーがアイコンにマウスを移動すると、それはツールチップとしてヘルプテキストを表示します.
だからまずすべてのヘルプアイコンが必要になります.TailWindCSSはHeroIconsを使用しているので、次のSVGを持っている円のアイコン、クエスチョンマークを拾う.
ML - 2 : 0.5レムの余白 H - 5、W - 5:高さと1.25レムの幅 カーソルポインタ:mouseover上でポインターにカーソルスタイルを変えること
これらのクラスを要件ごとに変更できます.
さて、このスパンの中にツールチップを表示するDIVも含めましょう.
まず最初にalpinejsデータを定義します.
テキストSM:ツールチップテキストをより小さく にしてくださいテキストホワイト:ツールヒントテキスト にホワイトカラーを適用するアブソリュート:それは周囲の要素 を乱さないように絶対位置を与えるために
ブルーシェードの背景色
LG : を適用します P - 2:5レムのパディング 変換:次の翻訳クラスを適用できるように -翻訳- Y - 8翻訳- X - 8:X軸とY軸 の上でテキストを移すこと
この段階では、チュートリアルの開始時にイメージに示すような出力を持つ必要があります.また、複数のツールヒントを刃ファイルに含めることもできます.
しかし、すべてのロジックをコンポーネントに移しましょう.ファイルを
この記事をお楽しみください.同様の記事については、あなたは私に従うことができます
さらに開始する前に、AlpineJjsとTailWindCSSと共にインストールされたLaravelプロジェクトがあることを確認してください.これらの依存関係の両方を自動的にインストールするには、Laravelプロジェクトで風をインストールすることをお勧めします.
私たちの目的は、ヘルプのアイコンを作成し、ユーザーがアイコンにマウスを移動すると、それはツールチップとしてヘルプテキストを表示します.
だからまずすべてのヘルプアイコンが必要になります.TailWindCSSはHeroIconsを使用しているので、次のSVGを持っている円のアイコン、クエスチョンマークを拾う.
<svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M8.228 9c.549-1.165 2.03-2 3.772-2 2.21 0 4 1.343 4 3 0 1.4-1.278 2.575-3.006 2.907-.542.104-.994.54-.994 1.093m0 3h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" />
</svg>
以下のようにスパンタグ内にカプセル化します<span class="ml-2 h-5 w-5 cursor-pointer">
<!-- SVG Goes Here -->
</span>
ここでは、TailWindCSSから以下のクラスを使用しています.これらのクラスを要件ごとに変更できます.
さて、このスパンの中にツールチップを表示するDIVも含めましょう.
<span class="ml-2 h-5 w-5 cursor-pointer">
<!-- SVG Goes Here -->
<div>
This is the Tooltip.
</div>
</span>
我々は最初にこのdivを隠す必要があります、そして、ユーザーがSVGの上にマウスを動かすとき、それを表示するだけです.これを達成するためにalpinejsを使用します.まず最初にalpinejsデータを定義します.
x-data="{ tooltip: false }"
x-on
にこのプロパティをtrueに設定し、mouseover
にこのプロパティをfalseに設定するように指示します.x-on:mouseover="tooltip = true" x-on:mouseleave="tooltip = false"
最後に、このプロパティを使用して、mouseleave
ディレクティブを使用してdivを表示し隠します.x-show="tooltip"
現在のコードは以下のようになります.<span
x-data="{ tooltip: false }"
x-on:mouseover="tooltip = true"
x-on:mouseleave="tooltip = false"
class="ml-2 h-5 w-5 cursor-pointer">
<!-- SVG Goes Here -->
<div x-show="tooltip">
This is the Tooltip.
</div>
</span>
私たちのツールチップは現在動作するはずです.しかし、TowWindCSSクラスを以下の部門に適用することで、さらに改善することができます. <div x-show="tooltip"
class="text-sm text-white absolute bg-blue-400 rounded-lg p-2
transform -translate-y-8 translate-x-8">
This is the Tooltip.
</div>
次のTailWindCSSクラスを適用しましたブルーシェードの背景色
LG : を適用します
この段階では、チュートリアルの開始時にイメージに示すような出力を持つ必要があります.また、複数のツールヒントを刃ファイルに含めることもできます.
しかし、すべてのロジックをコンポーネントに移しましょう.ファイルを
x-show
で作成し、すべてのコードをこのファイルに移動します.<span
x-data="{ tooltip: false }"
x-on:mouseover="tooltip = true"
x-on:mouseleave="tooltip = false"
class="ml-2 h-5 w-5 cursor-pointer">
<!-- SVG Goes Here -->
<div x-show="tooltip"
class="text-sm text-white absolute bg-blue-400 rounded-lg
p-2 transform -translate-y-8 translate-x-8"
>
{{$slot}}
</div>
</span>
ツールヒントテキストをresources/views/components/tooltip.blade.php
に置き換えた方法に注意してください.今では刃ファイル内でこのコンポーネントを呼び出すこともできますし、以下のようなツールヒントテキストも渡すことができます.<x-tooltip>This is the Tooltip Text</x-tooltip>
上記のコードは、ツールチップを我々の刃ファイルに使用する方法を示します.また、ツールヒントの動作を変更したい場合は、コンポーネントファイルでのみ行う必要があります.この記事をお楽しみください.同様の記事については、あなたは私に従うことができます
Reference
この問題について(TailWindCSSとAlpineJSを使用したツールチップ), 我々は、より多くの情報をここで見つけました https://dev.to/100r0bh/tooltip-using-tailwindcss-and-alpinejs-47c8テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol