我目前正在为我们的网站添加冗长的工具提示,我想(不必求助于一个神奇的jQuery插件,我知道有很多!)使用回车来格式化工具提示。
为了添加提示,我使用了title属性。我环顾了一下常用的网站,并使用了基本的模板:
<a title='Tool?Tip?On?New?Line'>link with tip</a>
我试过更换?:
< br / > &013;/ & # 13; \ r \ n 环境。换行符(我使用c#)
以上方法都行不通。这可能吗?
我目前正在为我们的网站添加冗长的工具提示,我想(不必求助于一个神奇的jQuery插件,我知道有很多!)使用回车来格式化工具提示。
为了添加提示,我使用了title属性。我环顾了一下常用的网站,并使用了基本的模板:
<a title='Tool?Tip?On?New?Line'>link with tip</a>
我试过更换?:
< br / > &013;/ & # 13; \ r \ n 环境。换行符(我使用c#)
以上方法都行不通。这可能吗?
当前回答
只需使用JavaScript。然后它与大多数和较老的浏览器兼容。
换行使用转义序列\n。
document.getElementById("ElementID").title = 'First Line text \n Second line text'
其他回答
只是分享我看到的小bug:
在Chrome 103中使用以下html:
<!DOCTYPE html > < html > <身体> <select title="Line 1: Line 2"> 测试<选项值= " 0 " > < /选项> < /选择> < /身体> < / html >
我看到了这个:
在截图上-“第一行:”文本后的两个奇怪的字符,第一行。
修复: (我不知道哪个是正确的/有效的,但它们都可以作为修复(在Chrome 103中))
在第一行之后添加空格(字符):在第一个
之前;修复它 先改变 & # 10;全行标题="第一行: 第2行" 添加,在第一行之后:在第一个 也在改变 “回车符号”将修复它
这是一个黑客,但它的工作-(在谷歌Chrome和移动测试)
只需要添加不间断空格,直到它中断-你可能需要根据内容的数量限制工具提示的大小,但对于小文本消息,这是有效的:
etc
我尝试了上面的所有方法,这是唯一对我有效的方法。
这里是一个演示:http://jsfiddle.net/rzea/vsp6840b/3/
HTML使用:
<a href="#" title="First Line
Second Line">Multiline Tooltip</a>
<br>
<br>
<a href="#" title="List:
• List item here
• Another list item here
• Aaaand another list item, lol">Unordered list tooltip</a>
最新的规范允许换行字符,因此在属性或实体
中使用简单的换行符;(注意字符#和;是必需的)都可以。
值得一提的是,如果你用JavaScript设置title属性,如下所示:
divElement。setAttribute("title", "第一行 第二行");
这是行不通的。你必须将ASCII十进制10替换为ASCII十六进制a按照JavaScript转义的方式。是这样的:
divElement。setAttribute("title", "Line one\x0ALine two");