Im folgenden Code soll ein Tooltip angezeigt werden, wenn der Benutzer die Zeitspanne überschreitet. Wie mache ich das? Ich möchte keine Links verwenden.
<span> text </span>
Im folgenden Code soll ein Tooltip angezeigt werden, wenn der Benutzer die Zeitspanne überschreitet. Wie mache ich das? Ich möchte keine Links verwenden.
<span> text </span>
Antworten:
Hier ist die einfache, integrierte Methode:
<span title="My tip">text</span>
Das gibt Ihnen einfache Text-Tooltips. Wenn Sie umfangreiche Tooltips mit formatiertem HTML benötigen, müssen Sie dazu eine Bibliothek verwenden. Zum Glück gibt es viele davon .
Alternativ zu den Standard- title
Attribut-Tooltips können Sie mithilfe von :before
/ :after
pseudo-Elementen und HTML5- data-*
Attributen eigene CSS-Tooltips erstellen .
Mit dem bereitgestellten CSS können Sie einem Element mithilfe des data-tooltip
Attributs einen Tooltip hinzufügen .
Sie können auch die Position der benutzerdefinierten steuern Tooltip das mit data-tooltip-position
Attribute (akzeptierten Werte: top
/ right
/ bottom
/ left
).
Im Folgenden wird beispielsweise eine QuickInfo hinzugefügt, die sich am unteren Rand des Bereichselements befindet.
<span data-tooltip="Custom tooltip text." data-tooltip-position="bottom">Custom bottom tooltip.</span>
Sie können die benutzerdefinierten QuickInfos mit Pseudoelementen anzeigen, indem Sie die benutzerdefinierten Attributwerte mithilfe der attr()
Funktion abrufen.
[data-tooltip]:before {
content: attr(data-tooltip);
}
Verwenden Sie zum Positionieren des Tooltips einfach die Attributauswahl und ändern Sie die Platzierung basierend auf dem Wert des Attributs.
Vollständiges CSS, das im Beispiel verwendet wird - passen Sie es an Ihre Bedürfnisse an.
[data-tooltip] {
display: inline-block;
position: relative;
cursor: help;
padding: 4px;
}
/* Tooltip styling */
[data-tooltip]:before {
content: attr(data-tooltip);
display: none;
position: absolute;
background: #000;
color: #fff;
padding: 4px 8px;
font-size: 14px;
line-height: 1.4;
min-width: 100px;
text-align: center;
border-radius: 4px;
}
/* Dynamic horizontal centering */
[data-tooltip-position="top"]:before,
[data-tooltip-position="bottom"]:before {
left: 50%;
-ms-transform: translateX(-50%);
-moz-transform: translateX(-50%);
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}
/* Dynamic vertical centering */
[data-tooltip-position="right"]:before,
[data-tooltip-position="left"]:before {
top: 50%;
-ms-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
[data-tooltip-position="top"]:before {
bottom: 100%;
margin-bottom: 6px;
}
[data-tooltip-position="right"]:before {
left: 100%;
margin-left: 6px;
}
[data-tooltip-position="bottom"]:before {
top: 100%;
margin-top: 6px;
}
[data-tooltip-position="left"]:before {
right: 100%;
margin-right: 6px;
}
/* Tooltip arrow styling/placement */
[data-tooltip]:after {
content: '';
display: none;
position: absolute;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
}
/* Dynamic horizontal centering for the tooltip */
[data-tooltip-position="top"]:after,
[data-tooltip-position="bottom"]:after {
left: 50%;
margin-left: -6px;
}
/* Dynamic vertical centering for the tooltip */
[data-tooltip-position="right"]:after,
[data-tooltip-position="left"]:after {
top: 50%;
margin-top: -6px;
}
[data-tooltip-position="top"]:after {
bottom: 100%;
border-width: 6px 6px 0;
border-top-color: #000;
}
[data-tooltip-position="right"]:after {
left: 100%;
border-width: 6px 6px 6px 0;
border-right-color: #000;
}
[data-tooltip-position="bottom"]:after {
top: 100%;
border-width: 0 6px 6px;
border-bottom-color: #000;
}
[data-tooltip-position="left"]:after {
right: 100%;
border-width: 6px 0 6px 6px;
border-left-color: #000;
}
/* Show the tooltip when hovering */
[data-tooltip]:hover:before,
[data-tooltip]:hover:after {
display: block;
z-index: 50;
}
In den meisten Browsern wird das title-Attribut als QuickInfo gerendert und ist im Allgemeinen flexibel, mit welchen Elementen es arbeiten soll.
<span title="This will show as a tooltip">Mouse over for a tooltip!</span>
<a href="http://www.stackoverflow.com" title="Link to stackoverflow.com">stackoverflow.com</a>
<img src="something.png" alt="Something" title="Something">
All dies rendert Tooltips in fast jedem Browser.
Für den grundlegenden Tooltip möchten Sie:
<span title="This is my tooltip"> Hover on me to see tooltip! </span>
Das "title"
Attribut wird vom Browser als Text für den Tooltip verwendet. Wenn Sie einen Stil darauf anwenden möchten, sollten Sie einige Plugins verwenden