从jQuery获取CSS的原因是因为jQuery的.css()
方法只能获取内联样式(inline style),而无法获取外部样式表(external style sheet)或者嵌入样式表(embedded style sheet)中定义的样式。
CSS样式可以通过多种方式应用到HTML元素上,包括内联样式、外部样式表和嵌入样式表。内联样式是直接在HTML元素的style
属性中定义的样式,而外部样式表和嵌入样式表是通过<link>
标签或者<style>
标签引入的样式。
jQuery的.css()
方法只能获取内联样式,因为它是通过直接读取HTML元素的style
属性来获取样式信息的。如果想获取外部样式表或者嵌入样式表中定义的样式,需要使用其他方法或者技术。
如果想获取外部样式表或者嵌入样式表中定义的样式,可以考虑使用以下方法:
getComputedStyle()
方法:这个方法可以获取指定元素应用的所有样式信息,包括外部样式表和嵌入样式表中定义的样式。示例代码如下:var element = document.getElementById("yourElementId");
var styles = window.getComputedStyle(element);
var color = styles.getPropertyValue("color");
var styleSheet = document.styleSheets[0]; // 假设是第一个样式表
var rules = styleSheet.cssRules || styleSheet.rules; // 获取样式表中的规则
var rule = rules[0]; // 假设是第一个规则
var color = rule.style.color; // 获取颜色属性值
领取专属 10元无门槛券
手把手带您无忧上云