javascript - 背景颜色不适用于动态插入的元素
问题描述
我正在尝试将浮动 div 标签设置为 MathJax 方程的特定部分。这就是为什么我必须在代码中动态插入描述标签的 HTML 元素,因为我想要插入代码的元素是在运行时生成的。
我能够找到该部分并将浮动 div 添加为标签,问题是由于某种原因我无法更改背景颜色。
我尝试了很多不同的方法(“将其插入css文件,插入元素时具有样式,稍后通过js添加)和css标签(“背景”,“背景颜色”)。样式出现在元素 消息html中 但背景颜色不会改变 消息外观。
let els = document.getElementById("id").getElementsByClassName("mjx-mstyle")
for(let i = 0; i < els.length; i++){
if(window.getComputedStyle(els[i]).color.indexOf("rgb(206, 15, 33)") >= 0 ){
(els[i]).setAttribute("style", "color: rgb(206, 15, 33); background-color: navy; position: relative");
(els[i]).innerHTML +=
'<div id="message1" style="position: absolute; top: -10px; width: 100px; color: black; background-color: black">This is my text</div>' -;
(els[i]).setAttribute("onmouseover", "document.getElementById('message1').style.display = 'block'");
(els[i]).setAttribute("onmouseout", "document.getElementById('message1').style.display = 'none'");
}
更新:
小提琴可以在这里找到https://jsfiddle.net/Lqn0afxm/37/。消息隐藏在“x”下。它会出现在鼠标悬停上。
谢谢您的帮助。
解决方案
您的代码外部 div 的高度为零,为 div 设置高度,否则您也可以将溢出设置为隐藏
推荐阅读
- google-apps-script - 使用数据透视表中的脚本更新不同的选项卡???
- css - 制作没有图像的 Woocommerce 产品子类别小盒子
- jquery - 向 X 个不同的 DOM 元素添加新元素
- sql - 一条 SQL 语句中有多个 WHERE 条件
- sql-server - 如何在 SQL 中实现 for each 循环
- c# - 对象池机制的问题,包含池的队列不能是静态的,因为静态变量不是继承的
- excel - 如果 sheet2 row1 上的单元格与 sheet1 上的单元格匹配,则将行从表 2 复制到表 1 并循环下一行
- c++ - 决定每次使用哪个模板特化结构
- azure - 在 DataFactory 中,是否有使用 Web API 将数据加载到 Dynamics365 的解决方案?
- python - 为什么tensorflow操作会导致NaN?