css – HTML – 相对于鼠标指针的工具提示位置

前端之家收集整理的这篇文章主要介绍了css – HTML – 相对于鼠标指针的工具提示位置前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何对齐工具提示的自然风格:右下角的鼠标指针?

~~~一些更多的文本能够提交。 ~~~一些更多的文本能够提交。 ~~~一些更多的文本能够提交。 ~~~

<!DOCTYPE html>
<html>
<head>
  <title>Tooltip with Image</title>
  <Meta charset="UTF-8">
  <style type="text/css">
    .tooltip {
        text-decoration:none;
        position:relative;
    }
     .tooltip span {
        display:none;
    }
     .tooltip span img {
        float:left;
    }
     .tooltip:hover span {
        display:block;
        position:absolute;
        overflow:hidden;
    }
  </style>
</head>
<body>
  <a class="tooltip" href="http://www.google.com/">
    Google
    <span>
      <img alt="" src="http://www.google.com/images/srpr/logo4w.png">
    </span>
  </a>
</body>
</html>

解决方法

对于默认工具提示行为,只需添加title属性。这不能包含图像。
<div title="regular tooltip">Hover me</div>

在澄清问题之前,我用纯JavaScript做到这一点,希望你觉得有用。图像将弹出并按照鼠标。

jsFiddle

JavaScript

var tooltipSpan = document.getElementById('tooltip-span');

window.onmousemove = function (e) {
    var x = e.clientX,y = e.clientY;
    tooltipSpan.style.top = (y + 20) + 'px';
    tooltipSpan.style.left = (x + 20) + 'px';
};

CSS

.tooltip span {
    display:none;
}
.tooltip:hover span {
    display:block;
    position:fixed;
    overflow:hidden;
}

扩展多个元素

多个元素的一个解决方案是更新所有工具提示跨度,并在鼠标移动时将其设置在光标下。

jsFiddle

var tooltips = document.querySelectorAll('.tooltip span');

window.onmousemove = function (e) {
    var x = (e.clientX + 20) + 'px',y = (e.clientY + 20) + 'px';
    for (var i = 0; i < tooltips.length; i++) {
        tooltips[i].style.top = y;
        tooltips[i].style.left = x;
    }
};
原文链接:https://www.f2er.com/css/220498.html

猜你在找的CSS相关文章