HTMLツールチップ内で改行を追加するにはどうすればよいですか?
次のように、ツールチップ内で<br/>
と\n
を使用してみました。
<a href="#" title="Some long text <br/> Second line text \n Third line text">Hover me</a>
ただし、これは役に立たず、ツールチップ内にリテラルテキスト<br/>
および\n
が表示されました。任意の提案が役立ちます。
タイトル属性の改行には、エンティティコード
を使用するだけです。

をスタイルと組み合わせてwhite-space:pre-line;が機能しました。
データ属性を追加するだけです
data-html = "true"
そしてあなたは行ってもいいです。
例えば。使用法:
<i data-html="true" class="tooltip ficon-help-icon" twipsy-content-set="true" data-original-title= "<b>Hello</b> Stackoverflow" </i>
これは、今のところ私が試したツールチッププラグインのほとんどで機能しました。
このCSSは、最終的にエディターの改行と連動して機能しました。
.tooltip-inner {
white-space: pre-wrap;
}
ここにあります: Twitter bootstrapツールチップに複数の行を作成する方法?
テキストの間に\n
を入れます。すべてのブラウザで動作します。
Example
img.tooltip= " Your Text : \n"
img.tooltip += " Your text \n";
これは私のために機能し、コードビハインドで使用されます。
これがあなたのために働くことを願っています
\n
スタイリング付き
.tooltip-inner {
white-space: pre-line;
}
私のために働いた。
見つけた。こうすることで簡単にできます
<a ref="#" title="First Line
Second Line
Third line">Hover Me</a>

(html)は0D
(hex)であるため、これは'\u000d'
として表すことができます
str = str.replace(/\n/g, '\u000d');
AngularJSフィルターを共有すると、 他の回答の参照のおかげで\n
がその文字に置き換えられます
app.filter('titleLineBreaker', function () {
return function (str) {
if (!str) {
return str;
}
return str.replace(/\n/g, '\u000d');
};
});
使用法
<div title="{{ message | titleLineBreaker }}"> </div>
qTipを使用している場合、<br />
は機能しました
Data-html = "true"を追加するだけです
<a href="#" title="Some long text <br/> Second line text \n Third line text" data-html="true">Hover me</a>
title属性を複数の行に広げることで、ネイティブHTMLツールチップ内に改行を追加できます。
ただし、Q-TipなどのjQueryツールチッププラグインを使用することをお勧めします。 http://craigsworks.com/projects/qtip/ 。
セットアップと使用は簡単です。また、無料のjavascriptツールチッププラグインも多数あります。
編集:最初のステートメントの修正。
私にとって、2ステップのソリューション(タイトルのフォーマットとスタイルの追加の組み合わせ)は、次のように機能しました。
1)title
attrbiuteをフォーマットします。
<a ref="#" title="First Line
Second Line
Third line">Hover Me</a>
2)このスタイルをtips
要素に追加します。
white-space: pre-line;
IE8、Firefox 22、およびSafari 5.1.7でテスト済み。
を使用すると動作するはずです(Chrome、FirefoxおよびEdgeでテストしました):
let users = [{username: 'user1'}, {username: 'user2'}, {username: 'user3'}];
let favTitle = '';
for(let j = 0; j < users.length; j++)
favTitle += users[j].username + " ";
$("#item").append('<i title="In favorite users: ' + favTitle + '">Favorite</i>');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id = item></div>
スクリプトに次のコードスニペットを追加するだけです。
$(function () {
$('[data-toggle="tooltip"]').tooltip()
});
そしてもちろん、上記の回答で述べたように、data-html
は"true"
でなければなりません。これにより、title
属性の値内でhtmlタグとフォーマットを使用できます。
Jquery Tooltip utilityを使用している場合、「jquery-ui.js」Javascriptファイルで次のテキストを見つけます。
tooltip.find(".ui-tooltip-content").html(content);
そしてその上に置きます
content=content.replace(/\</g,'<').replace(/\>/g,'>');
これがあなたにも役立つことを願っています。
.text()の代わりに.html()を使用するとうまくいきました。例えば
.html("This is a first line." + "<br/>" + "This is a second line.")
AngularJS with Bootstrap UI Tolltip (uib-tooltip), has three versions of tool-tip:
uib-tooltip、uib-tooltip-template、uib-tooltip-html
- uib-tooltip takes only text and will escape any HTML provided
- uib-tooltip-html takes an expression that evaluates to an HTML string
- uib-tooltip-template takes a text that specifies the location of the template
私の場合、uib-tooltip-htmlを選択しましたが、3つの部分があります:
例:
(function(angular) {
//Step 1: configure $sceProvider - this allows the configuration of $sce service.
angular.module('myApp', ['uib.bootstrap'])
.config(function($sceProvider) {
$sceProvider.enabled(false);
});
//Step 2: Set the tooltip content in the controller
angular.module('myApp')
.controller('myController', myController);
myController.$inject = ['$sce'];
function myController($sce) {
var vm = this;
vm.tooltipContent = $sce.trustAsHtml('I am the first line <br /><br />' +
'I am the second line-break');
return vm;
}
})(window.angular);
//Step 3: Use the tooltip in HTML (UI)
<div ng-controller="myController as get">
<span uib-tooltip-html="get.tooltipContent">other Contents</span>
</div>
詳細については、 こちらを確認してください
つかいます

あるべきではありません。キャラクター。
私にとっての解決策は、 http://jqueryui.com/tooltip/ :
そして、ここでのコード(<br/>
Worksを作成するスクリプトの部分は "content:"です):
HTML HEAD
<head runat="server">
<script src="../Scripts/jquery-2.0.3.min.js"></script>
<link href="Content/themes/base/jquery-ui.css" rel="stylesheet" />
<script src="../Scripts/jquery-ui-1.10.3.min.js"></script>
<script>
/*Position:
my => at
at => element*/
$(function () {
$(document).tooltip({
content: function() {
var element = $( this );
if ( element.is( "[title]" ) ) {
return element.attr( "title" );
}
},
position: { my: "left bottom-3", at: "center top" } });
});
</script>
</head>
ASPXまたはHTMLコントロール
<asp:TextBox ID="Establecimiento" runat="server" Font-Size="1.3em" placeholder="Establecimiento" title="Texto 1.<br/>TIP: texto 2"></asp:TextBox>
これが誰かを助けることを願って
タイトル属性の改行には、エンティティコード

を使用するだけです。
<a title="First Line 
Second Line">Hover Me </a>
タイトルに\ nを使用して、このCSSを追加するだけです
.tooltip-inner {
white-space: pre-wrap;
}
Jquery UI 1.10よりもお粗末なHTMLは無効なため、title属性内でhtmlタグを使用することはサポートされていません。
そのため、代替ソリューションはツールチップコンテンツオプションを使用することです。参照- http://api.jqueryui.com/tooltip/#option-content
jquery-ui 1.11.4を使用している場合:
var tooltip = $.widget( "ui.tooltip", {
version: "1.11.4",
options: {
content: function() {
// support: IE<9, Opera in jQuery <1.7
// .text() can't accept undefined, so coerce to a string
var title = $( this ).attr( "title" ) || "";
// Escape title, since we're going from an attribute to raw HTML
Replace--> //return $( "<a>" ).text( title ).html();
by --> return $( "<a>" ).html( title );
},