繁体   English   中英

为什么document.querySelector在伪元素上不起作用?

[英]Why is document.querySelector not working on pseudo element?

我正在玩伪元素和javascript,但有些我无法使用javascript设置样式。

  var div = document.querySelector(":before"); div.style["display"] ="none"; 
 div{ width:200px; height:200px; background:red; position:relative; } div:before{ position:absolute; content:''; top:0; right:-100px; width:100px; height:100%; background:green; } 
 <div></div> 

有谁知道为什么这不起作用?

如果要从javascript设置伪元素样式,则必须使用CSSOM注入规则。 这不是小事,但有可能。

var sheet = document.styleSheets[0]; //get style sheet somehow
var rules = sheet.rules; 
sheet.insertRule('div:before { display: none; }', rules.length);

本文的一个稍微修改的示例

CCSOM参考

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM