扫码关注官方订阅号
如下图,右边的是我需要的效果,即鼠标移上地图上红色位置图标时显示出来的照片与内容相对于下面位置图标居中显示。而左边是我做出来的效果,位移太严重了,求大神帮忙看看。
下面是我的HTML代码
你贴的代码没有意义,只是展示了红色图标的位置,并没有给出弹出框的结构和样式。看上去,弹出部分是 js 动态生成的并调整位置的。两个思路:
span
当鼠标移动到图标上时,动态生成浮动层数据内容,并添加到 span 标签中。鼠标移出时移出动态添加的层。需要为浮动层设置样式,大致如:
span.BMap_Marker > .浮动层 { background-color: #fff; /* 基础样式略 */ bottom: 100%; left: 50%; margin-left: -48px; /* 假设你的浮动层总宽度为 96px, */ position: absolute; }
需要注意 span 的 z-index 属性变化,因为浮动层是嵌入其中的,所以浮动层可能会被遮挡。
z-index
如果你的浮动层是固定尺寸的,那么你只需要用 JS 获取当前选定的图标,并读取出其相对位置,然后进行计算浮动层的位置即可:
left: 图标的left - (浮动层宽度/2); top: 图标的top - 浮动层高度;
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
你贴的代码没有意义,只是展示了红色图标的位置,并没有给出弹出框的结构和样式。看上去,弹出部分是 js 动态生成的并调整位置的。两个思路:
一、浮动层添加到图标
span标签里,设置浮动层的有样式当鼠标移动到图标上时,动态生成浮动层数据内容,并添加到
span标签中。鼠标移出时移出动态添加的层。需要为浮动层设置样式,大致如:需要注意
span的z-index属性变化,因为浮动层是嵌入其中的,所以浮动层可能会被遮挡。二、JS 动态调整
如果你的浮动层是固定尺寸的,那么你只需要用 JS 获取当前选定的图标,并读取出其相对位置,然后进行计算浮动层的位置即可: