Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
CSS变量在Microsoft Edge中的工作方式是否不同?_Css_Microsoft Edge_Css Variables - Fatal编程技术网

CSS变量在Microsoft Edge中的工作方式是否不同?

CSS变量在Microsoft Edge中的工作方式是否不同?,css,microsoft-edge,css-variables,Css,Microsoft Edge,Css Variables,我正在开发一个网站,并针对Firefox和Chrome进行了优化。该项目包含一个名为base.css的样式表,它包含在所有页面中,并包含一些全局设置和定义,包括一个用于存储颜色值的变量列表,如: :root { --yellow-1: #fff8e3; --yellow-2: #ffe9a9; } 以此类推,并给他们打电话,例如: .a-class { background-color: var(--yellow-2); } 当我在Edge中查看页面时,所有颜色都丢失

我正在开发一个网站,并针对Firefox和Chrome进行了优化。该项目包含一个名为
base.css
的样式表,它包含在所有页面中,并包含一些全局设置和定义,包括一个用于存储颜色值的变量列表,如:

:root {
    --yellow-1: #fff8e3;
    --yellow-2: #ffe9a9;
}
以此类推,并给他们打电话,例如:

.a-class {
    background-color: var(--yellow-2);
}

当我在Edge中查看页面时,所有颜色都丢失了,当我使用DOM资源管理器时,它用红色下划线标记所有变量的使用。Edge是否以这种方式支持CSS变量?如何解决此问题?

MS Edge支持来自EdgeHTML v15的CSS变量:

这里也有备份:


语法如下:

声明变量:

element {
  --main-bg-color: brown;
}
element {
  background-color: var(--main-bg-color);
}
使用变量:

element {
  --main-bg-color: brown;
}
element {
  background-color: var(--main-bg-color);
}

我也有同样的问题,但我定义了不透明度的变量。在Chrome中,它工作得很好,但在edge中却不行。在我从声明中删除不透明度后,它在Edge中也可以正常工作。

我尝试隔离问题,而在Edge中似乎没有问题。正常CSS的工作原理与预期相同

选择浏览器前缀元素时,如:

::-ms-track
::-ms-fill-lower
::-ms-fill-upper
::-ms-thumb

变量在SE上不起作用。

这是打字错误吗?正确声明时,
--yellow-2:#ffe9a9在Edge中运行良好。你能提供一个测试用例来演示这个问题吗?如果你想在IE11中支持自定义属性,看看这个Polyfill:它可以使用小于2kb的缩小和压缩。它不仅限于:根声明。我在Microsoft Edge 44.18362.449.0中遇到了这个问题,所有变量都显示出来了,但都被划掉了。当变量动态添加到根中时,这似乎不起作用;e、 g.`function addCSS(css){document.head.appendChild(document.createElement(“style”)).innerHTML=css;}addCSS(“:root{--color0:white;}”)`