如何在HTML工具提示中添加换行符?
我尝试在工具提示中使用<br/>
和\n
,如下所示:
<a href="#" title="Some long text <br/> Second line text \n Third line text">Hover me</a>
然而,这是无用的,我可以看到文字文本<br/>
和\n
工具提示中。任何建议都会有所帮助。
Environment.NewLine
工作是从代码端添加换行符...没有大惊小怪..没有混乱...
如何在HTML工具提示中添加换行符?
我尝试在工具提示中使用<br/>
和\n
,如下所示:
<a href="#" title="Some long text <br/> Second line text \n Third line text">Hover me</a>
然而,这是无用的,我可以看到文字文本<br/>
和\n
工具提示中。任何建议都会有所帮助。
Environment.NewLine
工作是从代码端添加换行符...没有大惊小怪..没有混乱...
Answers:
只需将实体代码
用于title属性中的换行符即可。


来说,Chrome v53在Windows中对我不起作用。但是
效果很好。


似乎都工作得很好:)
在
与风格相结合的白色空间:前行; 为我工作。
white-space: pre-line;
需要样式的事实非常隐蔽。


:stackoverflow.com/questions/6502054/...
\n
在文本之间给。它适用于所有浏览器。
Example
img.tooltip= " Your Text : \n"
img.tooltip += " Your text \n";
这将对我有用,并在后面的代码中使用。
希望这对你有用
我找到了。可以这样简单地完成
<a ref="#" title="First Line
Second Line
Third line">Hover Me</a>
由于
(html)是0D
(十六进制),因此可以表示为'\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>
只需将title属性分布在多个行上,就可以在本机HTML工具提示中添加换行符。
但是,我建议使用jQuery工具提示插件,例如Q-Tip:http : //craigsworks.com/projects/qtip/。
设置和使用很简单。另外,也有很多免费的javascript工具提示插件。
编辑:对第一条陈述的更正。
只需在脚本中添加以下代码片段即可:
$(function () {
$('[data-toggle="tooltip"]').tooltip()
});
当然,上面提到的答案data-html
应该是"true"
。这将允许您在title
属性值内使用html标记和格式。
data-toggle="tooltip" data-html="true" title="some string <br/> some string"
。
因此,如果您使用bootstrap4,那么它将起作用。
<style>
.tooltip-inner {
white-space: pre-wrap;
}
</style>
<script>
$(function () {
$('[data-toggle="tooltip"]').tooltip()
})
</script>
<a data-toggle="tooltip" data-placement="auto" title=" first line 
 next line" href= ""> Hover me </a>
如果您在Django项目中使用的话,我们还可以在工具提示中显示动态数据,例如:
<a class="black-text pb-2 pt-1" data-toggle="tooltip" data-placement="auto" title="{{ post.location }} 
 {{ post.updated_on }}" href= "{% url 'blog:get_user_profile' post.author.id %}">{{ post.author }}</a>
对我来说,解决方案是http://jqueryui.com/tooltip/:
这里的代码(使<br/>
Works生效的脚本部分是“ content:”):
HTML头
<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>
希望这可以帮助某人
Grater than Jquery UI 1.10不支持在title属性内使用html标签,因为它不是有效的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 );
},
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,它包含三个部分:
例:
(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>
欲了解更多信息,请点击这里
使用.html()而不是.text()对我有用。例如
.html("This is a first line." + "<br/>" + "This is a second line.")
使用
应该有效(我已经在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>
嗨,这段代码将在所有浏览器中正常工作!!我在chrome和safari中使用新行,并在IE中使用ul li
function genarateMultiLIneCode(){
var =values["a","b","c"];
const liStart = '<li>';
const liEnd = '</li>';
const bullet = '• ';
var mergedString = ' ';
const unOrderListStart='<ul>'
const unOrderListEnd='</ul>'
const fakeNewline = '
';
for (let i = 0; i < values.length; i++) {
mergedString += liStart + bullet + values[i] + liEnd + fakeNewline;
}
const tempElement = document.createElement("div");
tempElement.innerHTML = unOrderListStart + mergedString + unOrderListEnd;
return tempElement.innerText;
}
}
您可以使用引导工具提示,并且不要忘记将html选项设置为true。
<div id="tool"> tooltip</div>
$('#tool').tooltip({
title: 'line one' +'<br />'+ 'line two',
html: true
});
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
只需将实体代码

用于title属性中的换行符即可。
<a title="First Line 
Second Line">Hover Me </a>
此CSS将为您提供帮助。
.tooltip {
word-break: break-all;
}
or if you want in one line
.tooltip-inner {
max-width: 100%;
}