html - 如何使语音气泡出现在文本中的悬停上
问题描述
我想在悬停时出现一个包含文本信息或图像的语音框。当鼠标移动悬停的文本时,语音框就像维基百科一样出现。我曾尝试通过创建一些代码,但问题是该框未与悬停的文本对齐,当我在文本中添加语音框时,我无法在段落中使用语音框,该文本获取单独的段落. 我希望你能理解我想知道的,如果不尝试我帮助创建一个信息框,就像维基百科一样。
我写的代码:--
.hide {
display: none;
}
.speech {
position: relative;
width: 400px;
height: 100px;
text-align: center;
line-height: 100px;
background-color: #fff;
border: 8px solid #666;
-webkit-border-radius: 30px;
-moz-border-radius: 30px;
border-radius: 30px;
-webkit-box-shadow: 2px 2px 4px #888;
-moz-box-shadow: 2px 2px 4px #888;
box-shadow: 2px 2px 4px #888;
display: none;
}
.speech:after {
content: ' ';
position: absolute;
width: 0;
height: 0;
left: 38px;
top: 100px;
border: 15px solid;
border-color: #fff transparent transparent #fff;
}
.speech:before {
content: ' ';
position: absolute;
width: 0;
height: 0;
left: 30px;
top: 100px;
border: 25px solid;
border-color: #666 transparent transparent #666;
}
.myDIV:hover+.speech {
display: block;
color: red;
}
<h2>Display an Element on Hover</h2>
<div class="myDIV">Hover over me.</div>
<div class="speech">I am shown when someone hovers over the div above.</div>
解决方案
- 将您的 div 放在另一个相对定位的 div 中。
- Speech div 应该是相对父 div 的第一个孩子,并且定位绝对。
- 然后,您可以通过以下样式调整语音 div:“顶部:xxpx;左侧:xxpx”。
- 将 css 更改为在父 div 悬停时显示 .speech。
你应该有相对位置的父 div,这样你的对话气泡就可以根据父的位置进行调整。
下面是一个示例:
<div style="position:relative;">
<div style='position:absolute' class="speech">I am shown when someone hovers over the div above.</div>
<div class="myDIV">Hover over me.</div>
</div>
推荐阅读
- video - 如何使用 Tokbox API 在 Dual Monitor 中拆分视频咨询
- c# - 如何检测插入的软盘然后复制文件?
- c# - DataGrid 中的 WPF 切换列可见性触发不需要的事件
- node.js - 如何使用passport google o auth实现我们自己的自定义注册表单?
- sql-server - 从 Azure 弹性数据库作业读取 Oracle 数据库
- javascript - npm 库/框架下载量大幅下降。有谁知道为什么?
- azure-functions - 需要 Azure 持久功能活动触发器吗?
- c# - Asp.Net Core 2.1 ApiController 不会在单元测试下自动验证模型
- python - 绘制一个返回浮点数组的自定义函数
- javascript - 如何将提供程序正确附加到 reactDOM.render