我的 javascript 包含在 X 的站点中,但我对她的站点或她包含它的位置没有任何其他控制权。如果她的风格#element
,我不想管它,但如果她没有,我有一个样式表,我将在 <head>
中注入(inject).有没有办法检测她是否设计了样式?
检查它的高度是 0 还是 1 失败,因为它有一些内容并且浏览器做出默认决定。
javascript/jquery/其他框架告诉样式的 CSS 特性的任何方式都可以回答这个问题并且令人难以置信。
最佳答案
对于内联样式,这很简单:您只需访问 element.style
对象并检查您想要的属性——或使用 element.hasAttribute('style')
检查属性是否在 HTML 中定义。
对于样式表应用的 CSS 规则,我建议您看一下“Is it possible to check if certain CSS properties are defined inside the style tag with Javascript?”,它与您所问的非常相似。
使用那里描述的方法,也很容易过滤掉只有 #element
选择器的规则,如果你想过滤掉任何通用规则(比如标签规则)。
关于javascript - 是否可以检测元素的样式只是浏览器默认样式还是由样式表或内联样式设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15891280/