目标是在外部样式表中定义自定义 CSS 属性值。
外部 CSS:
#myDiv {
--myCustomProperty: 'myCustomValue';
}
标记:
<html>
<div id='myDiv'></div>
</html>
CSS 规范中没有任何内容说自定义属性无效。但是,浏览器会将它们呈现为无效,但理论上它们应该仍然可以通过 window.getComputedStyle 或类似方式使用。Firebug 在样式窗格中显示自定义属性及其值,但将其标记为已覆盖。
以下片段来自:http ://www.quirksmode.org/dom/getstyles.html
JavaScript:
function getStyle(el,styleProp) {
var x = document.getElementById(el);
if (x.currentStyle)
var y = x.currentStyle[styleProp];
else if (window.getComputedStyle)
var y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp);
return y;
}
var value = getStyle('myDiv', '--myCustomProperty');
alert(value);
输出应该是字符串“myCustomValue”