如何在多行文本选择的中心对齐工具提示

问题描述 投票:0回答:0

我需要在文本选择的中心对齐工具提示。这是我到目前为止获得正确位置的代码:

const getTooltipPosition = () => {
  const selection = window.getSelection();
  const oRange = selection.getRangeAt(0);
  const oRect = oRange.getBoundingClientRect();

  return {
    top: oRect.top - 20, // line height.
    left: oRect.left + oRect.width * 0.5,
  };

如果我选择一行或一个单词,这很有效:

问题是当我选择了多行时:

您可以看到工具提示与主文本容器的中心对齐,而不是与第一行中文本选择的中心对齐。

这是预期的输出:

如何更改这段代码才能达到这个结果?如果有任何其他方法不涉及我的初始解决方案,那不是问题。

javascript html css reactjs tooltip
© www.soinside.com 2019 - 2024. All rights reserved.