はじめに
Bootstrap 3を試してみるシリーズの第4弾は、Windowsでもお馴染みの、Tooltips(ツールチップ)を試してみます。
2013年12月28日 15時07分
Bootstrap 3を試してみるシリーズの第4弾は、Windowsでもお馴染みの、Tooltips(ツールチップ)を試してみます。
作業の前提条件は、下記のとおりです。
ソフトウエア | バージョン |
---|---|
OS | Windows 7 Ultimate 32bit |
Cygwin | Setup Version 2.831 |
お約束のbootstrap.min.[cs,js] + jquery-1.10.2.min.jsを指定して、HTMLを作成します。
Tooltipsは、HTMLに記述しただけだと、ツールチップの表示位置を制御できない状態で、 表示することはできます。しかし、位置を制御したいのであれば、以下のJavaScriptをHTMLファイルに追加します。
<script> $('[data-toggle=tooltip]').tooltip(); </script>
Tooltipsは以下の書式で、簡単に使用できます。
data-toggle="tooltip" data-placement="top" data-container="body" title="title"
属性 | 初期値 | 概要 |
---|---|---|
data-toggle | なし | Tooltipsを使用する場合、tooltipを指定する。 |
data-placement | top | ツールチップを表示する位置をtop/bottom/left/rightの中から指定する。 |
data-container | なし | ツールチップを表示する要素を指定します。bodyを指定すると、ツールチップはbody要素に追加されるため、ツールチップのメッセージが折り返されて表示されません。 |
title | なし | 表示するメッセージを指定する。 |
デフォルト位置(top)に、ツールチップを表示します。
<p> <a href="#" data-toggle="tooltip" title="上に表示されます"> 上に表示されます(デフォルト)</a> </p>
リンクの右に、ツールチップを表示します。
2行目で、data-placementで表示位置を指定しています。また、3行目にdata-containerを指定しているため、ツールチップは折り返して表示されません。
<p class="text-right"> <a href="#" data-toggle="tooltip" data-placement="right" data-container="body" title="右に表示されます">折り返されません</a> </p>
リンク要素だけでなく、panelクラスやpanel-bodyクラスにも指定できます。
panel-bodyの親要素(panel)にも指定しているため、ツールチップを2つ同時に表示させることができます。
<div class="panel panel-primary"> <div class="panel-body" data-toggle="tooltip" data-placement="top" data-container="body" title="枠の外に表示されます"> <p data-toggle="tooltip" data-placement="bottom" data-container="body" title="下に表示されます">下に表示されます </p> </div> </div>
ButtonGroupまたは、ButtonGroupの各要素に対して、ツールチップを個別に指定できます。
<div class="btn-group btn-group-justified" data-toggle="tooltip" data-placement="top" title="上に表示されます"> <div class="btn-group"> <button type="button" class="btn btn-info" data-toggle="tooltip" data-placement="top" data-container="body" title="上に表示されます"> 上に表示されます</button> </div> </div><!-- btn-group -->
ButtonGroupと同様に、Tableの各要素に対して指定することができます。
<div class="table-responsive"> <table class="table table-striped table-hover table-bordered table-condensed"> <thead> <tr class="active"> <th class="text-center">カラム1</th> <th class="text-center">カラム2</th> </tr> </thead> <tbody> <tr class="info"> <td>上</td> <td data-toggle="tooltip" data-placement="top" data-container="body" title="上に表示されます">に表示されます</td></tr> </tbody> </table> </div><!-- table-responsive -->
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <!--[if IE]> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <![endif]--> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>026</title> <link href="bootstrap.min.css" rel="stylesheet"> </head> <body> <header class="navbar navbar-static-top bs-docs-nav" id="top" role="banner"> </header> <div class="container"> <div class="row"> <div class="col-xs-3 col-sm-3 col-md-3"> </div><!-- col-3 --> <!-- メインコンテンツ --> <div class="col-xs-6 col-sm-6 col-md-6"> <div class="container-fluid"> <h4>Link</h4> <p> <a href="#" data-toggle="tooltip" data-container="body" title="上に表示されます"> 上に表示されます(デフォルト)</a> </p> <p> <a href="#" data-toggle="tooltip" data-placement="bottom" data-container="body" title="下に表示されます">下に表示されます</a> </p> <p> <a href="#" data-toggle="tooltip" data-placement="left" data-container="body" title="左に表示されます">左に表示されます</a> </p> <p class="text-right">data-containerが指定されていない場合</p> <p class="text-right"> <a href="#" data-toggle="tooltip" data-placement="right" title="右に表示されます">折り返されます</a> </p> <p class="text-right">data-containerが指定されている場合</p> <p class="text-right"> <a href="#" data-toggle="tooltip" data-placement="right" data-container="body" title="右に表示されます">折り返されません</a> </p> <h4>Panel</h4> <div class="panel panel-primary"> <div class="panel-body" data-toggle="tooltip" data-placement="top" data-container="body" title="枠の外に表示されます"> <p data-toggle="tooltip" data-placement="bottom" data-container="body" title="下に表示されます">下に表示されます </p> </div> </div> <h4>Button Group</h4> <div class="btn-group btn-group-justified" data-toggle="tooltip" data-placement="top" title="上に表示されます"> <div class="btn-group"> <button type="button" class="btn btn-info" data-toggle="tooltip" data-placement="top" data-container="body" title="上に表示されます"> 上に表示されます</button> </div> <div class="btn-group"> <button type="button" class="btn btn-success" data-toggle="tooltip" data-placement="bottom" data-container="body" title="下に表示されます"> 下に表示されます</button> </div> <div class="btn-group"> <button type="button" class="btn btn-danger" data-toggle="tooltip" data-placement="left" data-container="body" title="左に表示されます"> 左に表示されます</button> </div> <div class="btn-group"> <button type="button" class="btn btn-warning" data-toggle="tooltip" data-placement="right" data-container="body" title="右に表示されます"> 右に表示されます</button> </div> </div><!-- btn-group --> <h4>Table</h4> <div class="table-responsive"> <table class="table table-striped table-hover table-bordered table-condensed"> <thead> <tr class="active"> <th class="text-center">カラム1</th> <th class="text-center">カラム2</th> </tr> </thead> <tbody> <tr class="info"> <td>上</td> <td data-toggle="tooltip" data-placement="top" data-container="body" title="上に表示されます">に表示されます</td></tr> <tr class="success"> <td>下</td> <td data-toggle="tooltip" data-placement="bottom" data-container="body" title="下に表示されます">に表示されます</td></tr> <tr class="danger"> <td>左</td> <td data-toggle="tooltip" data-placement="left" data-container="body" title="左に表示されます">に表示されます</td></tr> <tr class="warning"> <td>右</td> <td data-toggle="tooltip" data-placement="right" data-container="body" title="右に表示されます">に表示されます</td></tr> </tbody> </table> </div><!-- table-responsive --> </div><!-- container-fluid --> </div><!-- col-6 --> <div class="col-xs-3 col-sm-3 col-md-3"> </div><!-- col-3 --> </div><!-- row --> </div><!-- container --> <script src="jquery-1.10.2.min.js"></script> <script src="bootstrap.min.js"></script> <script> $('[data-toggle=tooltip]').tooltip(); </script> </body> </html>