工具提示需要处于溢出状态:自动容器没有被切断

时间:2016-10-20 08:27:20

标签: css tooltip flexbox overflow

我正在构建一种桌面应用程序。页面本身不能滚动,但其中的不同内容部分可以滚动。因此,他们有overflow: auto

但是现在我需要显示工具提示,因此它们会在容器边缘被切断。

关于此问题的其他问题的所有答案,我发现建议不要剪辑溢出(隐藏,自动,滚动),但不幸的是,这不是我的选择。

由于我无法确定我的容器和工具提示的高度,因为两者都从外部获取数据,我无法将工具提示放在其中间并确保不会被切割关闭。

所以我需要一个不会切断工具提示的解决方案。

我的基本标记的工作示例:

#flex {
  display: flex;
  flex-direction: column;
  height: 200px;
  width: 100%;
}
#box1,
#box2 {
  flex 1;
  overflow-y: auto; /* without overflow the tooltip would work, but I need overflow */
}
#box1 {
  background-color: lightgrey;
}
#box2 {
  background-color: lightblue;
}
span {
  position: relative;
  text-decoration: underline;
}
#tooltip {
  background-color: lightgreen;
  display: none;
  position: absolute;
  height: 100px;
  width: 200px;
  bottom: 0px;
}
span:hover #tooltip {
  display: block;
}
<div id="flex">
  <div id="box1">
    Flex Content
    <br>Flex Content
    <br>Flex Content
    <br>Flex Content
    <br>Flex Content
    <br>Flex Content
    <br>
  </div>
  <div id="box2">
    Flex Content with <span>Tooltip
    <div id="tooltip">
    Tooltip text
    </div></span>
    <br>Flex Content
    <br>Flex Content
    <br>Flex Content
    <br>Flex Content
    <br>Flex Content
    <br>Flex Content
    <br>
  </div>
</div>

https://jsfiddle.net/dqrkkvkL/

1 个答案:

答案 0 :(得分:1)

找到解决方案here

他们只是将position: relative从包含工具提示的元素移动到包围溢出元素的容器

https://jsfiddle.net/dqrkkvkL/1/