JavaScript如何更改CSS :hover属性?

例如:

HTML

<table>
  <tr>
    <td>Hover 1</td>
    <td>Hover 2</td>
  </tr>
</table>

CSS

table td:hover {
background:#ff0000;
}

如何使用JavaScript将td :hover个属性修改为(比方说)background:#00ff00个属性?我知道我可以通过以下方式使用JavaScript访问样式背景属性:

document.getElementsByTagName("td").style.background="#00ff00";

但我不知道:hover.style个JavaScript类似功能.

推荐答案

:hover这样的伪类从不引用元素,而是引用满足样式表规则条件的任何元素.您需要添加edit the stylesheet ruleappend a new rule或包含新:hover规则的新样式表.

var css = 'table td:hover{ background-color: #00ff00 }';
var style = document.createElement('style');

if (style.styleSheet) {
    style.styleSheet.cssText = css;
} else {
    style.appendChild(document.createTextNode(css));
}

document.getElementsByTagName('head')[0].appendChild(style);

Html相关问答推荐

如何在将文本垂直居中的同时将文本右对齐?

Div中的图像问题-(TailWind CSS中的网格)

按钮之间的HTML文本居中不正确

在WooCommerce单一产品页面上使产品图片库粘滞(固定)

带下划线的文本应该有延长的下划线,以使其图像悬停

SVG';COLOR&39;属性不优先于通用css';COLOR&39;属性

Django HTML标记-Merge for Loop with Conditional语句

浮动Div在CSS中未按预期工作

为什么我的 html 对话框在 React 中没有渲染在我的内容之上?

停止 Bootstrap 5 输入调整 CSS 网格单元的高度

您如何动态更改 Vue 中更高级别的标签的 CSS

如何截断一些文本并用双引号引起来?

pandas `to_html()` - 如何只使特定的行有边框

将 HTML 元素粘贴到容器底部,而不剪裁其顶部

将背景图像裁剪成两半

如何使用 CSS 使粘性元素固定在视口顶部

把标题、段落和图片放在一起

如果不透明的元素出现在下方,为什么不透明度会使一个元素出现在另一个元素上方?

每次按下按钮时减小字体大小的 jquery 函数

如何使用 css 将图像变成黑色并使文本出现在悬停时?