我目前正在为我们的网站添加冗长的工具提示,我想(不必求助于一个神奇的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'

其他回答

最新的规范允许换行字符,因此在属性或实体&#10中使用简单的换行符;(注意字符#和;是必需的)都可以。

有多种方法可以做到这一点。&#13或&#010;取决于浏览器。但下面的例子适用于我的谷歌Chrome和Firefox。

<a href="javascript:;" title="工具提示第一行&#10;工具提示第二行&#10;工具提示第三行">工具提示</a> .

& # xD;<-----这是插入回车符所需的文本。

“只需按下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(不排除其他;我只是没有检查)。

剃须刀的语法

在ASP的情况下。NET MVC,你可以把标题存储为变量,作为\r\n,就可以了。

@{
    var logTooltip = "Sunday\r\nMonday\r\netc.";
}

<h3 title="@logTooltip">Logs</h3>