2016-03-28 11 views
0

私はツールチップシステムを作ろうとしています。マウスが(画像のパスと評価される)tooltipというプロパティを持つスパン要素の上にマウスを置いていると、画像は画面の右上に表示されます。画像をホバリングにする

<style> 
    span[tooltip]:hover:after{ 
     content: attr(tooltip); 
     margin-left:auto; 
     } 
</style> 
<p><span tooltip='url("graphics/new_folder")'>Click "New">"Folder upload"</span> and upload the folder from its location</p> 

は単にspan要素の後にテキストurl("graphics/new_folder")をレンダリングします。 content: attr(tooltip);content:url("graphics/new_folder")に置き換えると、イメージが表示されますが、スタイリングはそれと奇妙なやり取りをします。 position:fixedfloat:right、およびfloat:topは、位置を変更するだけでなく、ビューポートの視点からの画像にも影響しません。それをheightwidthという値を与えると、あまりにも奇妙な位置で再生されます。ここ

ので、複数の質問:私はcontent:attr(tooltip)が効果的に画像をレンダリングすることができますどのように

  1. プロパティを画像に適切に適用したり、画像を画面の右上に取得するにはどうすればよいですか?
  2. これを行うAPIを知らないのですか?私は1つは存在すると思うが、見つけられないだろう。

私はしばらくこの問題に取り組んできました。

答えて

0

あなたはそれが助け教えdocument.getElementById('open').style.display=の呼び出しでonMouseoverイベントを持っている必要がありホバリングを必要とするタグ要素を今すぐ<img src='my_image' style='display:none;' id='open'>

として画像タグを設定する必要があります。

0

これはCSSで行うことはできませんcontent:attr()<img src="">スパンの内側にホバー以上の画像が表示されますが、これはCSS content:attr()で行うことはできません。

代替uが使用して同じことを行うことができますdataたAttrすなわち

+0

あなたは明確でしたdata-tooltip="graphics/new_folder"? 'data- *'という値を使用するために私はどのようなCSSを使用しますか? 'data- *'のMDNユーザーガイドは、attr()を使用するように言います。 –

+0

https://jsfiddle.net/mhmpretx/1/これを参照してくださいfiddle @ CodeM4aster –

関連する問題