Мне бы хотелось, чтобы текст всплывающей подсказки был полностью указан CSS, а не в динамической c - html части моего приложения, чтобы стилизация и код могли быть полностью отделимыми (я беру обратите внимание, что сообщения всплывающей подсказки могут беспокоить UX-отдел или, по крайней мере, стороннего пользователя, и им не нужно взламывать генерирующий JavaScript код для изменения подсказки).
Ожидается, что следующий код не будет работать полностью, но он вообще не работает:
<!DOCTYPE html>
<html>
<style>
.tooltip {
position: relative;
display: inline-block;
border-bottom: 1px dotted black;
}
.tooltip .tooltiptext {
visibility: hidden;
width: 120px;
background-color: black;
color: #fff;
text-align: center;
border-radius: 6px;
padding: 5px 0;
/* Position the tooltip */
position: absolute;
z-index: 1;
}
.tooltip:after {
content: "foo bar";
}
.tooltip:hover .tooltip:after {
visibility: visible;
}
</style>
<body style="text-align:center;">
<p>Move the mouse over the text below:</p>
<div class="tooltip">Hover over me
</div>
</body>
</html>
В частности, хотя я определил содержимое после, он не отображается при наведении:
.tooltip:after {
content: "foo bar";
}
.tooltip:hover .tooltip:after {
visibility: visible;
}
Для справки, это было изменено из примера w3schools
Не уверен, что этот старый ответ все еще применим, поскольку он может предшествовать псевдоэлементам: Подсказки, только CSS, Показать текстовую подсказку при наведении мыши, используя класс для определения текста