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

Переопределение стилей CSS виджета JQuery UI Tooltip

Я использую jQuery UI Виджет подсказки

<li>
    <div class="i1">
        <a href="#inf-1"title="ΕΝΤΟΠΙΣΜΟΣ">
            <span class="ui-icon ui-icon-search"></span>
        </a>
    </div>
</li>
<li><a href="#inf-2"title="ΠΛΗΡΟΦΟΡΙΕΣ"><span class="ui-icon ui-icon-info"></span></a></li>
<li><a href="#inf-3"title="ΕΠΙΠΕΔΑ"><span class="ui-icon ui-icon-copy"></span></a></li>

и я написал следующий CSS на основе их примера, и он работает как шарм:

.tooltip {
    display:none;
    background: black;
    font-size:12px;
    height:10px;
    width:80px;
    padding:10px;
    color:#fff; 
    z-index: 99;
    bottom: 10px;
    border: 2px solid white;
/* for IE */
  filter:alpha(opacity=80);
  /* CSS3 standard */
  opacity:0.8;
}


Но у меня есть 3-4 подсказки, которые я хочу посмотреть по-другому (например, пример html выше), поэтому я завернул их внутри класса и сделал это:

.i1 .tooltip  {
    display:none;
    background: red;
    font-size:12px;
    height:40px;
    width:80px;
    padding:20px;
    color:#fff; 
    z-index: 99;
    bottom: 10px;
    left: 50px important!;
    border: 2px solid white;
/* for IE */
  filter:alpha(opacity=80);
  /* CSS3 standard */
  opacity:0.8;
}

который абсолютно ничего не делает. Как я могу переопределить общий .tooltip для настройки определенных всплывающих подсказок по-разному?

Заранее спасибо

4b9b3361

Ответ 1

Для тех, кто хочет применить пользовательский класс к новому виджету tooltip (jQuery UI 1.9.1), extraClass больше не работает, но есть новая опция, называемая tooltipClass.

$('.selector').tooltip({
        tooltipClass: "your_class-Name",
});

Чтобы устранить потенциальные конфликты с jQuery css, вам может потребоваться добавить !important в конец строк в вашем css. Благодаря @sisharp для указания на то, что: -)

Ответ 2

Пытаясь опираться на отличный ответ выше, я пытался создать пузырь и избавиться от старого...

Если вы новичок, как я (в других, простая задача занимает много часов), приятно иметь ответ в одно и то же время на одном месте:) Вот решение из нескольких источников, включая этот вопрос:

<a href="#"  title="We are trying hard" class="mytooltip"><span title="">BETA</scan></a>

Пробел удаляет пузырь браузера.

CSS для нового пузыря в качестве примера:

.mytooltip:hover:after{
  background: #333;
  background: rgba(0,0,0,.9);
  border-radius: 5px;
  bottom: 26px;
  color: rgb(255, 77, 85);
  content: attr(title);
  right: 20%;
  padding: 5px 15px;
  position: absolute;
  z-index: 98;
  width: 220px;}
.mytooltip:hover:before{
    border: solid;
    border-color: #333 transparent;
    border-width: 6px 6px 0 6px;
    bottom: 20px;
    content: "";
    right: 50%;
    position: absolute;
    z-index: 99;
}

.mytooltip {
  radius: 4px !important;
  background-color: black;
   color: rgb(255, 77, 85) !important;
  padding: 5px 20px;
  border-radius: 20px;
  margin: 50px;
  text-align: center;
  font: bold 14px ;
  font-stretch: condensed;
  text-decoration: none;
  box-shadow: 0 0 10px black;
}

И упомянутый выше script, вставленный в нижний колонтитул:

<script>
$('.selector').tooltip({
        tooltipClass: "mytooltip",
});
</script>

Спасибо этому вопросу, this, и я забыл другой источник.

Ответ 3

Я попробовал все варианты выше, и никто не работал у меня.

Я просмотрел подсказку options docs, которая связана с этой статьей о , после прочтения я пробовал это, что сработало:

$('#my_selectr').tooltip({"classes": {"ui-tooltip": "my-custom-class-name", "ui-tooltip-content": "my-custom-class-name-content"}})

Затем просто добавьте 2 класса CSS с вашим стилем:

my-custom-class-name {
...
}
my-custom-class-name-content {
...
}

Обратите внимание, что вам, возможно, придется использовать! важно в ваших пользовательских классах.

Ответ 4

Фактически его

$( ".selector" ).tooltip( "option", "tooltipClass", "custom-tooltip-styling" );

Смотрите здесь