如何将css工具提示仅应用于某个元素?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将css工具提示仅应用于某个元素?相关的知识,希望对你有一定的参考价值。

我怎样才能将margin仅应用于一个tooltip元素?我正在使用bootstrap 4

$('[data-toggle="tooltip"]').tooltip()
.tooltip.bs-tooltip-right{
    margin-left: 30px;
}
button{
    margin-top: 20px !important;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>

<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="right" title="Tooltip on right">
  Tooltip on right
</button><br>
<button type="button" class="btn btn-secondary applyCssToolTipHere" data-toggle="tooltip" data-placement="right" title="Tooltip on right">
  Tooltip on right
</button><br>
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="right" title="Tooltip on right">
  Tooltip on right
</button><br>
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="right" title="Tooltip on right">
  Tooltip on right
</button>
答案

使用tooltip组件提供的custom events删除/添加类:

$('[data-toggle="tooltip"]').tooltip()

$('.applyCssToolTipHere').on('show.bs.tooltip shown.bs.tooltip', function () {
  $('.tooltip').addClass('apply');
})
$('.applyCssToolTipHere').on('hide.bs.tooltip hidden.bs.tooltip', function () {
  $('.tooltip').removeClass('apply');
})
.apply{
    background:red;
}
button{
    margin-top: 20px !important;
}
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>

<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="right" title="Tooltip on right">
  Tooltip on right
</button><br>
<button type="button" class="btn btn-secondary applyCssToolTipHere" data-toggle="tooltip" data-placement="right" title="Tooltip on right">
  Tooltip on right
</button><br>
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="right" title="Tooltip on right">
  Tooltip on right
</button><br>
<button type="button" class="btn btn-secondary" data-toggle="tooltip" data-placement="right" title="Tooltip on right">
  Tooltip on right
</button>

以上是关于如何将css工具提示仅应用于某个元素?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 JQuery 将 css 属性应用于子元素

如何使CSS工具提示在原始项目上严格保持,而不是在新生成的工具提示上?

SwiftUI:如何仅将修饰符应用于特定元素?

css有用的代码片段

如何仅将特定的 CSS 规则应用于 Chrome?

使用 CSS/JavaScript 更改 Kendo Chart 工具提示文本颜色