各位大神下午好!
我想获取外部css文件中的一些信息,但是不知道为什么没有效果。
请看下面的代码,按理说应该弹出 "#p" 啊,难道js无法直接获取外部样式的信息吗?(我试过,如果获取内部的样式信息是可以的)
【HTML文件内容】
Title
【1.css文件内容】
#p {background-color:blue}
#button {border:1px solid green}
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
沙发说反了
在非ie下能跑 ie8或者更低版本不行
因为ie8或更低版本没有document.styleSheets下没有cssRules,只有一个类似的rules
所以在ie8或者更低版本上你可以
document.styleSheets[0].rules[0].selectorText
------------------------------另外----------------------------
还有一种情况ie下(不管几) 如果你路径里出现中文字符时或者本地浏览(file://协议),rules(cssRules)为空。所以要确保自己是用类似http://localhost/xxx/yy.html之类来启动的
对于内联css样式可以直接用元素的style属性。
但是对于外部的css是不能这么做的。
这种情况下是要分IE浏览器和非IE浏览器的情况的。你这段代码应该在IE浏览器下面是可以执行的。但是在非IE下,如chrome,就会报错。
在非IE浏览器下,应该使用getComputedStyle()函数。参考这里:getComputedStyle
请学习