現在、以下の関数を使用して、ブートストラップのツールチッププラグインを使用して表示されるテキストを作成しています。複数行のツールチップが<br>
ではなく\n
でのみ機能するのはなぜですか?リンクのタイトル属性にHTMLが含まれていないことを好みます。
動作するもの
def tooltip(object)
tooltip = ""
object.each do |user|
tooltip += "#{user.identifier}" + "<br>"
end
return tooltip
end
私が欲しいもの
def tooltip(object)
tooltip = ""
object.each do |user|
tooltip += "#{user.identifier}" + "\n"
end
return tooltip
end
ツールチップでwhite-space:pre-wrap
を使用できます。これにより、ツールチップは新しい行を尊重します。コンテナのデフォルトの最大幅よりも長い場合、行は折り返されます。
.tooltip-inner {
white-space:pre-wrap;
}
http://jsfiddle.net/chad/TSZSL/52/
テキストが折り返されないようにするには、代わりに次の手順を実行します。
.tooltip-inner {
white-space:pre;
max-width:none;
}
http://jsfiddle.net/chad/TSZSL/53/
これらはどちらもhtmlの\n
では機能しません。実際には実際の改行でなければなりません。または、エンコードされた改行
を使用できますが、おそらく<br>
を使用するよりも望ましくありません。
Htmlプロパティを使用できます: http://jsfiddle.net/UBr6c/
My <a href="#" title="This is a<br />test...<br />or not" class="my_tooltip">Tooltip</a> test.
$('.my_tooltip').tooltip({html: true})
Twitter Bootstrap非リンク要素のツールチップを使用している場合は、data
パラメーターのみを使用して、Javascriptを使用せずに、HTMLコードで直接複数行のツールチップを使用するように指定できます。
<span rel="tooltip" data-html="true" data-original-title="1<br />2<br />3">5</span>
これは、costales '回答の代替バージョンにすぎません。すべての栄光は彼に行きます! :]
Angular UI Bootstrapを使用している場合は、HTML構文でツールチップを使用できます:tooltip-html-unsafe
例えばangular 1.2.10およびangular-ui-bootstrap 0.11への更新: http://jsfiddle.net/aX2vR/1/
Angular UI Bootstrap 0.13.Xでは、tooltip-html-unsafeは非推奨になりました。これで、tooltip-htmlと$ sce.trustAsHtml()を使用して、htmlでツールチップを作成する必要があります。
https://github.com/angular-ui/bootstrap/commit/e31fcf0fcb06580064d1e6375dbedb69f1c95f25
<a href="#" tooltip-html="htmlTooltip">Check me out!</a>
$scope.htmlTooltip = $sce.trustAsHtml('I\'ve been made <b>bold</b>!');
Angular BootstrapのCSSソリューションは
::ng-deep .tooltip-inner {
white-space: pre-wrap;
}
使用を制限する必要がない場合は、親要素またはクラスセレクタを使用する必要はありません。コピー/パスタ。このルールはすべてのサブコンポーネントに適用されます