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

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

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

我试过更换?:

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

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


当前回答

在Chrome 79, &#13;已经不管用了。

我成功地做到了:

& # 13; & # 10;

这适用于所有主流浏览器。

其他回答

从Firefox 12开始,他们现在支持使用换行HTML实体的换行:&#10;

<span title="First line&#10;Second line">Test</span>

这在IE中工作,并且根据HTML5的title属性规范是正确的。

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

至于谁&#10;没有工作,你必须样式的元素上的行可见如下:

它引用自GuitarWorker对在工具提示中添加换行符的回答。

根据W3C网站上的这篇文章:

CDATA是来自文档字符集和的字符序列 可能包括字符实体。用户代理应该解释属性 取值如下: 用字符替换字符实体, 忽略换行, 用一个空格替换每个回车或制表符。

这意味着(至少)CR和LF在title属性中不起作用。我建议你使用工具提示插件。大多数插件都允许将任意HTML显示为元素的工具提示。

使用\x0A让我在鼠标悬停时在标题/工具提示中获得换行符。

文件名:news.php

<span onmouseover="getInfo(this,'06-APR-22')" data-html="true">Day</span>

文件名:news.php

<script>
function getInfo(x, dateVal) {       
      var html = $.ajax({
            type: "POST",
            url: "report/get-info.php",
            data: {             
                'dateVal': dateVal,
            },              
            success: function(response) {
                x.setAttribute('title', response );
            }
        });
}
</script>

文件名:get-info.php

<?php
$tmp  = $_POST['dateVal'];   
$dateVal = date("m/d/Y", strtotime($tmp));

$querySelectCode = "SELECT INFO_ID, INFO_NAME FROM INFORMATION
                    WHERE TRUNC(DP.DATE_TIME) = TO_DATE('$dateVal','MM/DD/YYYY') ";    
$stmtSelectcode = oci_parse($dbConn, $querySelectCode);
if ( ! oci_execute($stmtSelectcode) ){
    $err = oci_error($stmtSelectcode);
    trigger_error('Query failed: ' . $err['message'], E_USER_ERROR);
}
$INFO_ID = array();
while(oci_fetch($stmtSelectcode)){
    $INFO_ID[]   =  oci_result($stmtSelectcode, 'INFO_ID');
    $INFO_NAME[]     =  oci_result($stmtSelectcode, 'INFO_NAME');        
}
for($index=0 ; $index < count($INFO_ID) ; $index++)
{
    echo   $INFO_NAME[$index ] . "\x0A" ;        
}
?>