Подтвердить что ты не робот

Twitter Bootstrap Tooltip: мерцает при размещении сверху кнопки, но отлично работает при размещении слева/справа/снизу

Я имею дело с каким-то странным поведением для экземпляра всплывающей подсказки bootstrap.

На странице, с которой я работаю, есть несколько кнопок, которые при зависании отображают всплывающие подсказки с описанием функциональности кнопок. Всплывающие подсказки отображаются сверху кнопок, и, за исключением одной кнопки, все работает нормально. Эта одна кнопка отображает всплывающую подсказку с непрерывным мерцанием, сама всплывающая подсказка закрывает часть кнопки (вместо того, чтобы быть полностью на верхней части кнопки) и предотвращает правильное нажатие кнопки. Если "размещение данных" для всплывающей подсказки изменено с "сверху" на "левый" / "правый" / "снизу", всплывающая подсказка отображается правильно.

Кроме того, кнопка, которая вызывает у меня проблемы, завершается в div, который имеет "float: right"; присвоенный в css. Я упоминаю об этом, потому что заметил, что если я удалю поплавок, всплывающая подсказка отлично работает. К сожалению, если я удалю поплавок, сама кнопка теряет правильное положение.

В то время как я мог отказаться от "верхнего" позиционирования для всплывающей подсказки, я надеялся, что может возникнуть легкий трюк в этой проблеме. У кого-нибудь есть предложения?

Спасибо.

Update:

qaru.site/info/485270/... представляет ту же проблему, что и проблема, с которой я столкнулся. Я нашел ответ полезным.

4b9b3361

Ответ 1

Я нашел быстрое решение для своей проблемы. Хотя относительно короткое, мое первоначальное описание всплывающей подсказки было разделено на две строки. Случайно, я попытался сократить текст всплывающей подсказки, чтобы поместиться на одной строке. Как только это было сделано, всплывающая подсказка была правильно отображена. Поэтому я предполагаю, что должна быть проблема с длиной текста всплывающей подсказки и тем фактом, что кнопка отображается полностью справа от страницы (и вверху страницы). Я пока не буду исследовать это дальше.

Ответ 2

У меня была такая же проблема. Я обнаружил, что всплывающие подсказки Bootstrap не позиционируют себя правильно над элементами "floated" или "inline/inline-block", когда эти элементы находятся внутри контейнера с относительным или абсолютным позиционированием. У меня есть кнопка, плавающая справа, внутри абсолютно позиционированного родительского контейнера. Если я удалю абсолютное позиционирование родителя, всплывающая подсказка отобразится отлично. Bootstrap необходимо решить эту проблему.

Ответ 3

Это происходит на встроенных элементах, таких как теги a. Установка свойства display на block устраняет проблему.

Ответ 4

Поздний отклик, но у меня была эта же проблема, и я смог ее разрешить, используя параметр "container" в ссылке jQery tooltip на элемент html.

См. эту страницу и ссылку jsfiddle.

Вы можете увидеть подробности опций контейнера tooltip здесь.

Ответ 5

Основываясь на ответе Стива, я обнаружил, что проблема в том, что моя ссылка css на шрифт awesome css была после загрузочного css. Bootstrap css устанавливает свойство отображения для шрифтов, которые являются "встроенными блоками".

Итак, чтобы исправить проблему, я просто переместил ссылку bootstrap css после шрифта awesome css, и это устранило мерцающую проблему для меня.

Ответ 6

Я не уверен, сколько у вас контроля над битами Bootstrap, но похоже, что событие hover постоянно срабатывает. Путем остановки этого было бы использовать .stop() перед вызовом, но я не уверен, что это возможно здесь, например:

$('#myelement').stop().fadeOut(200);

Я не знаю, можете ли вы сделать что-то подобное с помощью вызова Bootstrap, но, возможно, стоит попробовать!

Ответ 7

Добавить в подсказку pointer-events: none; правило css, например

.tooltip {
  pointer-events: none;
}

Это предотвратит включение всплывающей подсказки для событий мыши и устраняет проблему.