2012-03-22 10 views
5

テキストが内部にあるhtml td要素があります。私はあなたがその要素の上にマウスを置くことができるようにし、アクティブなページ/要素の上にテキストボックスを表示して、そのtdタグの内容が何を意味するのかを説明します。ある種の精緻化。 <abbr>タグのように。CSS/Javascriptのmou​​seover/hoverにテキストボックス 'popup'が表示されます

これはCSSまたはJavascriptで行うことができますか?

答えて

9

これはCSSでも可能で、javascriptでも可能です。要素を持つテーブルを作成します。

<table> 
<tr><td> 
    <a href="#">Info 
     <div class="tooltipcontainer"> 
      <div class="tooltip">Here some info</div> 
     </div> 
    </a> 
</td></tr> 
</table> 

CSS:あなたは 'INFO' にカーソルを合わせると

/* Container is necessary because td cannot be positioned relative */ 
td .tooltipcontainer { 
    position: relative; 
} 
td .tooltip { 
    display: none; 
    position: absolute; 
    /* More positioning, heigh, width, etc */ 
} 
td a:hover .tooltip { 
    display: block; 
} 

それは、クラス= 'ツールチップ' でのdiv内のテキストが表示されます。 JavaScript(例えば、任意のjQueryツールチッププラグイン)には、より多くのオプションを持つソリューションがあります。このことができます

+0

です私たちのためにもっと良いでしょうy tbh – mickburkejnr

+0

ありがとうございます。これは私が探していたCSSソリューションの一種でした。私はしかし、Javascriptのソリューションはより多くの利点があると思う。 – DextrousDave

2

これまでにTooltip JSを使用しました。それは本当にうまくいったし、あなたにとって有益だと思う。

+0

おかげで、これはこのクールなソリューション – DextrousDave

3

例のマークアップ...

<td id="1">..</td> 
<td id="2">..</td> 
<td id="thisiswhatiwanttohaveahover"><div class="tooltip hidden"></div></td> 

CSSスタイル

.visible { 
    display:block; 
} 

.hidden { 
    display:none; 
} 

あなたことができ

$('#thisiswhatiwanttohaveahover').hover(function() { 
    if ($(this + ' .tooltip').hasClass('hidden')) { 
    $(this + ' .tooltip').removeClass('hidden'); 
    $(this + ' .tooltip').addClass('visible'); 
    } 
    if ($(this + ' .tooltip').hasClass('visible')) { 
    $(this + ' .tooltip').removeClass('visible'); 
    $(this + ' .tooltip').addClass('hidden'); 
    } 
}); 

希望..

+0

ありがとう、これは良いJSソリューションのように見えます。それを試してみる – DextrousDave

+0

確かに私は助けを叶えた:) –

関連する問題