Question

Je suis actuellement des infobulles verbeux sur notre site, et je voudrais (sans avoir recours à un plugin jQuery whiz-bang, je sais qu'il ya beaucoup!) À utiliser le transport revient à formater l'info-bulle.

Pour ajouter le conseil que je suis en utilisant l'attribut title. Je l'ai regardé autour des sites habituels et en utilisant le modèle de base de:

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

J'ai essayé de remplacer le avec ?:

  • <br />
  • &013; / &#13;
  • \r\n
  • Environment.NewLine (J'utilise C #)

Aucun des travaux ci-dessus. Est-il possible?

Était-ce utile?

La solution

Il est si simple que vous vous lancer ... presser la touche Entrée

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

Firefox ne sera pas afficher plusieurs lignes infobulles du tout bien -. Il remplacera les nouvelles lignes avec rien

Autres conseils

dernière spécification permet le caractère de saut de ligne, donc une simple coupure de ligne dans l'attribut ou entité &#10; (notez que les caractères et # sont obligatoires ;) sont OK.

caractère Essayez 10. Il ne fonctionnera pas dans Firefox cependant. : (

  

Le texte est affiché (le cas échéant) dans un   navigateur de manière dépendante. Petit   infobulles fonctionnent sur la plupart des navigateurs. Longue   infobulles sécable travail dans IE   et Safari (utilisation &#10; ou &#13; pour un   nouveau saut de ligne). Firefox et Opera ne le font pas   retour à la ligne de soutien. Firefox ne   soutenir infobulles longtemps.

http://modp.com/wiki/ htmltitletooltips

Mise à jour:

En Janvier Firefox ne supporte ici à 2015 à l'aide d'insérer une title saut de ligne dans un HTML attribut <=>. Voir l'exemple ci-dessous l'extrait.

<a href="#" title="Line 1&#13;Line 2&#13;Line 3">Hover for multi-line title</a>

testé ce dans IE, Chrome, Safari, Firefox (dernières versions 2012-11-27):
&#13;

Fonctionne dans tous les ...

Il faut aussi mentionner, si vous définissez l'attribut title avec JavaScript comme ceci:

divElement.setAttribute("title", "Line one&#10;Line two");

Il ne fonctionnera pas. Vous devez remplacer cette décimal ASCII 10 à un hexadécimal ASCII A la façon dont il est échappé avec Javascript. Comme ceci:

divElement.setAttribute("title", "Line one\x0ALine two");

de Firefox 12, ils prennent désormais en charge les sauts de ligne à l'aide de l'alimentation en ligne entité HTML: &#10;

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

Cela fonctionne dans IE et est correcte en fonction de la spécification HTML5 pour le attribut title .

Si vous utilisez jQuery:

$(td).attr("title", "One \n Two \n Three");

fonctionne.

testé dans IE-9:. Travail

En tant que contribution à la solution &#013;, nous pouvons également utiliser pour les onglets si &#009 vous avez besoin de faire quelque chose comme ça.

<button title="My to-do list:&#013;&#009;-Item 2&#013;&#009;-Item 3&#013;&#009;-Item 4&#013;&#009;&#009;-Subitem 1">TEST</button>

Démo

 ici

Je sais que je suis en retard à la fête, mais pour ceux qui veulent juste voir ce travail, voici une démonstration: http://jsfiddle.net/rzea/vsp6840b/3/

HTML utilisé:

<a href="#" title="First Line&#013;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>

&#13; fonctionne sur tous les navigateurs IE majeurs (inclus)

Nous avions une exigence où nous avions besoin de tester tout cela, voici ce que je veux partager

document.getElementById("tooltip").setAttribute("title", "Tool\x0ATip\x0AOn\x0ANew\x0ALine")
<p title='Tool
Tip
On
New
Line'>Tooltip with <pre>
  new 
  line</pre> Works in all browsers</p>
<hr/>

<p title="Tool&#13;Tip&#13;On&#13;New&#13;Line">Tooltip with <code>&amp;#13;</code> Not works Firefox browsers</p>
<hr/>

<p title='Tool&#10;Tip&#10;On&#10;New&#10;Line'>Tooltip with <code>&amp;#10;</code> Works in some browsers</p>
<hr/>

<p title='Tool&#x0aTip&#x0aOn&#x0aNew&#x0aLine'>Tooltip with <code>&amp;#xD;</code> May work in some browsers</p>
<hr/>

<p id='tooltip'>Tooltip with <code>document.getElementById("tooltip").setAttribute("title", "Tool\x0ATip\x0AOn\x0ANew\x0ALine")</code> May work in some browsers</p>
<hr/>


<p title="List:
  • List item here
  • Another list item here
  • Aaaand another list item, lol">Tooltip with <code>• </code>Unordered list tooltip</p>
<hr/>


<p title='Tool\nTip\nOn\nNew\nLine'>Tooltip with <code>\n</code> May not work in modern browsers</p>
<hr/>

<p title='Tool\tTip\tOn\tNew\tLine'>Tooltip with <code>\t</code> May not work in modern browsers</p>
<hr/>

<p title='Tool&#013;Tip&#013;On&#013;New&#013;Line'>Tooltip with <code>&amp;#013;</code> Works in most browsers</p>
<hr/>

Fiddle

Je ne crois pas que ce soit. Firefox 2 versions titres de lien longs de toute façon et ils devraient vraiment être utilisées que pour transmettre une petite quantité de texte d'aide. Si vous avez besoin de plus d'explication du texte, je dirais qu'il appartient dans un paragraphe associé au lien. Vous pouvez ensuite ajouter l'info-bulle code javascript pour cacher ces paragraphes et leur montrer que les infobulles sur vol stationnaire. C'est votre meilleur pari pour le faire fonctionner l'OMI cross-browser.

&#xD; <----- Ceci est le texte nécessaire pour insérer Carry Retour.

Chrome 16 et versions antérieures éventuellement, vous pouvez utiliser "\ n". En tant que sidenote, "\ t" fonctionne aussi

pour qui ne fonctionne pas &#10; vous devez styler l'élément sur lequel les lignes sont visibles sous: white-space: pre-line;

de cette réponse Référencé: https://stackoverflow.com/a/17172412/1460591

Il suffit d'utiliser ceci:

<a title='Tool&#x0aTip&#x0aOn&#x0aNew&#x0aLine'>link with tip</a>

Vous pouvez ajouter une nouvelle ligne sur le titre en utilisant ce &#x0a.

Il suffit d'utiliser JavaScript. Ensuite, compatible avec la plupart des navigateurs et plus. Utiliser la séquence d'échappement \ n de saut de ligne.

   document.getElementById("ElementID").title = 'First Line text \n Second line text'

D'après les informations disponibles sur l'accessibilité et l'utilisation des infobulles qui les rend plus à l'utilisation de CR ou saut de ligne est apprécié, le fait que les différents navigateurs ne peuvent pas / ne seront pas d'accord sur les bases montre qu'ils ne se soucient pas beaucoup sur accessibilité.

Ce devrait fonctionner si &#013; vous utilisez simplement d'un simple attribut title.

sur popovers bootstrap, il suffit d'utiliser et utiliser html data-html="true" dans l'attribut data-content.

<div title="Hello &#013;World">hover here</div>

Syntaxe Razor

Dans le cas d'ASP.NET MVC, vous pouvez simplement enregistrer le titre comme une variable que l'utilisation et il va \r\n travailler.

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

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

pirater mais fonctionne - (testé sur chrome et mobile)

il suffit d'ajouter aucun espace de pause jusqu'à ce qu'il casse - vous pourriez avoir à limiter la taille de l'info-bulle en fonction de la quantité de contenu, mais pour les petits messages texte cela fonctionne:

&nbsp;&nbsp; etc

tout Essayé ci-dessus et c'est la seule chose qui a fonctionné pour moi -

et appliquer l'utilisation data-html="true" <br>.

scroll top