Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
title
. Так почему бы вместо data-title
не писать настоящий title
, а при инициализации скрипта не убирать его, чтобы не мешался, и не использовать текст из него? Опять же, шансов, что какие-то роботы или читалки посмотрят на атрибут title
больше, а у data-title
шансов никаких.Это просто приукрашенный атрибут title.
<a data-tooltipID="1">LInk for tooltip</a>
<div id="1" class="tooltip">Some content with HTML markup</div>
data-title
, либо о костылях в виде использований символов (*bold, ^italic)
, что ужас живоописуемый.data-*
более семантичны если даже в названии раскрывается основной их посыл: хранение информации?title
и не понимает data-title
. По-этому первый атрибут предпочтительней (не во всех случаях).В демке с длинным текстом, успевает мелькнуть тултип в одну очень длинную строку — даже скроллбар горизонтальный появиться успевает
Опера
white-space:nowrap;
, так что дело в этом. Хотя почему наблюдается такое поведения пока неясно — остальные браузеры отрабатывают нормально.Имхо, в качественном тултипе должно быть ещё и авто-позиционирование (когда он появляется там, где хватит места в зависимости от скроллинга), особенно это важно в адаптивных сайтах: раздражает, когда он появляется где-то за границей экрана.
Очень жаль, что вы совсем не думаете о фолбеке. Ведь что такое тултип? Это просто приукрашенный атрибут title. Так почему бы вместо data-title не писать настоящий title, а при инициализации скрипта не убирать его, чтобы не мешался, и не использовать текст из него? Опять же, шансов, что какие-то роботы или читалки посмотрят на атрибут title больше, а у data-title шансов никаких.
title
до момента тестов в IE8. Схема была такая:t = $(this);
t.attr('data-title', this.title).removeAttr('title').css('position', t.css('position') == 'static' ? 'relative' : !1);
Замечу, что идея не нова и схожая реализация, скорее всего, существует. По-этому, если вы уже съели парочку тутлтипов и не хотите более, откажитесь от прочтения данного рецепта, ведь он — лишь урок...
Странно использовать стороны света вместо top left bottom right принятых в css.
Не кажется ли вам, что указание расположения подсказок в атрибутах — шаг назад? Консорциум, ведь, так борется за семантику
title
для размещения текста подсказки.IE9 — без закругленных углов *.
На разработку собственного варианта подсказок меня натолкнул Tipsy Tooltip используемый в Twitter Bootstrap.
* bootstrap-tooltip.js v2.3.2
* twitter.github.com/bootstrap/javascript.html#tooltips
* Inspired by the original jQuery.tipsy by Jason Frame
simpleTooltip: HTML начиненный CSS и приправленный jQuery