我目前正在为我们的网站添加冗长的工具提示,我想(不必求助于一个神奇的jQuery插件,我知道有很多!)使用回车来格式化工具提示。

为了添加提示,我使用了title属性。我环顾了一下常用的网站,并使用了基本的模板:

<a title='Tool?Tip?On?New?Line'>link with tip</a>

我试过更换?:

< br / > &013;/ & # 13; \ r \ n 环境。换行符(我使用c#)

以上方法都行不通。这可能吗?


当前回答

只是分享我看到的小bug:

在Chrome 103中使用以下html:

<!DOCTYPE html > < html > <身体> <select title="Line 1:&#13;&#13;Line 2"> 测试<选项值= " 0 " > < /选项> < /选择> < /身体> < / html >

我看到了这个:

在截图上-“第一行:”文本后的两个奇怪的字符,第一行。

修复: (我不知道哪个是正确的/有效的,但它们都可以作为修复(在Chrome 103中))

在第一行之后添加空格(字符):在第一个&#13之前;修复它 先改变&#13;& # 10;全行标题="第一行:&#10;&#13;第2行" 添加,在第一行之后:在第一个&#13; 也在改变&#13;“回车符号”将修复它

其他回答

在Chrome 16或更早的版本中,你可以使用“\n”。顺便说一句,“\t”也可以。

使用data-html="true"并应用<br>。

如果你试图在一个React项目中这样做,你将以下面的格式呈现:

title={`First line of text ${varOne} &#13; Second line of text ${varTwo} &#13; Third line of text ${varThree}`}

那么&#13;,&#10;类似的解决方案并不奏效。它们实际上会呈现为文本。

相反,根据需要实际创建文本是更好的选择。为了更好地理解,举个例子:

title={`First line of text ${varOne}
Second line of text ${varTwo}
Third line of text ${varThree}`}

确保在“第二行文本”和“第三行文本”之前删除制表符/空格缩进。否则他们也会渲染。

它在谷歌Chrome 96和Firefox 95.0b12(开发者版,因为,为什么不呢)上进行了测试。它应该也适用于大多数现代浏览器。

只是分享我看到的小bug:

在Chrome 103中使用以下html:

<!DOCTYPE html > < html > <身体> <select title="Line 1:&#13;&#13;Line 2"> 测试<选项值= " 0 " > < /选项> < /选择> < /身体> < / html >

我看到了这个:

在截图上-“第一行:”文本后的两个奇怪的字符,第一行。

修复: (我不知道哪个是正确的/有效的,但它们都可以作为修复(在Chrome 103中))

在第一行之后添加空格(字符):在第一个&#13之前;修复它 先改变&#13;& # 10;全行标题="第一行:&#10;&#13;第2行" 添加,在第一行之后:在第一个&#13; 也在改变&#13;“回车符号”将修复它

“只需按下enter”的解决方案在这里不起作用,所以优秀的老香草JavaScript似乎是一种相当高效和干净的方法。

function customTitle(event, textHeader, text){
    let eventOrigin = event.target || event.srcElement;
    eventOrigin.title = textHeader + '\n\n' + text;
}

在元素onmouseover上:

onmouseover="customTitle(event, 'Some Caput', 'Some more or less complete description');"

瞧!它适用于谷歌Chrome和Firefox(不排除其他;我只是没有检查)。