由于填充而导致相对位置中断的AngularJS材质工具提示

时间:2019-01-18 09:37:24

标签: javascript html css angularjs angularjs-material

工具提示内容与触发对象内容重叠

我正在使用AngularJS和材料来构建组件。一个组件的一部分是工具提示,该提示位于目标元素上方,relative上。由于工具提示必须具有三角形指针,因此它确实需要具有相对位置而不是绝对位置。

由于我必须在其内容上满足特定的填充要求,因此工具提示会与目标元素重叠,除非我摆弄.md-tooltip的顶部,否则我不会屈服于它,这要求我通过Javascript可以做到这一点,我只能在它们不间断可见且不应该出现的情况下才能做到。

template.html

...
<md-tooltip md-direction="top">
  <span class="tooltipContent"> Just some random text </span>
</md-tooltip>
...

template.scss

.md-tooltip {
  background-color: grey;
  border-radius: 4px;
}

.md-tooltip.md-show, .md-tooltip.md-hide {
  @extend .md-tooltip;

  position: relative;
  padding-bottom: 10px;
  padding-top: 10px;
}

// tooltip triangle pointer
.md-tooltip::before {
  position: absolute;
  content: " ";
  top: 97%;
  left: 50%;
  margin-left: -8px;
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  align-self: center;
  border-top: 5px solid grey;
}

// tooltip
.tooltipContent {
  max-width: 218px;
  font-size: 12px;
  line-height: 1.33;
  font-weight: 600;
  white-space: nowrap;
  text-overflow: ellipsis;
  display: table-cell;
  overflow: hidden;
  padding-left: 8px;
  padding-right: 8px;
  color: white;
}

以下是发生的情况的屏幕截图:

Tooltip arrow above content

0 个答案:

没有答案