我目前正在为我们的网站添加冗长的工具提示,我想(不必求助于一个神奇的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#)
以上方法都行不通。这可能吗?
当前回答
可以手动创建更漂亮的工具提示,并可以包含HTML格式。
<!DOCTYPE html>
<html>
<style>
.tooltip {
position: relative;
display: inline-block;
border-bottom: 1px dotted black;
}
.tooltip .tooltiptext {
visibility: hidden;
width: 120px;
background-color: #555;
color: #fff;
text-align: center;
border-radius: 6px;
padding: 5px 0;
position: absolute;
z-index: 1;
bottom: 125%;
left: 50%;
margin-left: -60px;
opacity: 0;
transition: opacity 0.3s;
}
.tooltip .tooltiptext::after {
content: "";
position: absolute;
top: 100%;
left: 50%;
margin-left: -5px;
border-width: 5px;
border-style: solid;
border-color: #555 transparent transparent transparent;
}
.tooltip:hover .tooltiptext {
visibility: visible;
opacity: 1;
}
</style>
<body style="text-align:center;">
<h2>Tooltip</h2>
<p>Move the mouse <a href="#" title="some text
more and then some">over</a> the text below:</p>
<div class="tooltip">Hover over me
<span class="tooltiptext">Tooltip text
some <b>more</b><br/>
<i>and</i> more</span>
</div>
<div class="tooltip">Each tooltip is independent
<span class="tooltiptext">Other tooltip text
some more<br/>
and more</span>
</div>
</body>
</html>
这是来自W3Schools的帖子。在这里试验一下上面的代码。
其他回答
只是分享我看到的小bug:
在Chrome 103中使用以下html:
<!DOCTYPE html > < html > <身体> <select title="Line 1: Line 2"> 测试<选项值= " 0 " > < /选项> < /选择> < /身体> < / html >
我看到了这个:
在截图上-“第一行:”文本后的两个奇怪的字符,第一行。
修复: (我不知道哪个是正确的/有效的,但它们都可以作为修复(在Chrome 103中))
在第一行之后添加空格(字符):在第一个
之前;修复它 先改变 & # 10;全行标题="第一行: 第2行" 添加,在第一行之后:在第一个 也在改变 “回车符号”将修复它
我试过 在新的一行显示标题文本,它的工作就像一个魅力。
从Firefox 12开始,他们现在支持使用换行HTML实体的换行:
<span title="First line Second line">Test</span>
这在IE中工作,并且根据HTML5的title属性规范是正确的。
如果你试图在一个React项目中这样做,你将以下面的格式呈现:
title={`First line of text ${varOne} Second line of text ${varTwo} Third line of text ${varThree}`}
那么 , 类似的解决方案并不奏效。它们实际上会呈现为文本。
相反,根据需要实际创建文本是更好的选择。为了更好地理解,举个例子:
title={`First line of text ${varOne}
Second line of text ${varTwo}
Third line of text ${varThree}`}
确保在“第二行文本”和“第三行文本”之前删除制表符/空格缩进。否则他们也会渲染。
它在谷歌Chrome 96和Firefox 95.0b12(开发者版,因为,为什么不呢)上进行了测试。它应该也适用于大多数现代浏览器。
试试第10个字符。直到2015年1月,它还不能在Firefox中运行。
文本(如果有的话)显示在 依赖浏览器的方式。小 工具提示适用于大多数浏览器。长 IE中的工具提示和换行 和Safari(使用 或& # 13;对于一个 新换行符)。Firefox和Opera则不然 支持换行。Firefox则没有 支持长工具提示。
http://modp.com/wiki/htmltitletooltips
Firefox现在支持使用 在HTML标题属性中插入换行符。请参阅下面的代码片段示例。
<a href="#" title="第1行 第2行 第3行">悬停多行标题</a>