Css calc 在具有线性渐变的 IE11 中不起作用

标签 css internet-explorer-11 css-calc

*{
  margin:0; padding: 0;
}
body {
 background-color: orangered;
}
.content {
  margin-top: 200px;
  height: 100vh;
  background-color: #fdfdff;
}
.tilt {
  position: relative;
}
.tilt:before {
  content: '';
    padding-top: 8.74887%;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    background-image: linear-gradient(5deg, #fdfdff calc(50% - 1px), transparent 50%);
}
<div class="content tilt">

</div>

看来 IE11 在理解 calc() css 属性方面存在一些问题。

我以这种方式使用带有线性渐变的 calc:

background-image: linear-gradient(5deg, #fdfdff calc(50% - 1px), transparent 50%);

但是当我这样使用它时:

background-image: linear-gradient(5deg, #fdfdff, transparent 50%);

它工作没有问题。

还有一件事我不明白。当我在 IE11 中检查该属性时,将其关闭并重新打开即可。

使用 calc(50% - 1px) 的全部意义在于 Angular 看起来更平滑,就是这样。

有什么建议吗?

最佳答案

我找到了解决方案。 在我的 sass mixin 中,我添加了:

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) { background: linear-gradient($angle, $color 50%, transparent 50%); }

现在它如我所愿地工作了。

关于Css calc 在具有线性渐变的 IE11 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44027789/

相关文章:

javascript - 如何将我的 JavaScript 数组导出到 IE11 上的 CSV 或 Excel 文件中?

css - 如何防止 Less 尝试编译 CSS calc() 属性?

jquery - 在 jquery 中使用 css calc()

jquery - 在 jquery 更改后将背景颜色设置回原始颜色

JavaScript onClick 方法更改图像的 CSS 属性

javascript - 在 IE11 中未清除 cookie(通过 Javascript 写入 document.cookie 来设置 cookie)

Ajax POST 在 IE11 中不起作用

html - 当 div 设置为可见时停止内容移动?

javascript - 关于隐藏在 iframe 中的溢出的 IE 8 错误

css - 为什么 + 或 - 必须在 Calc() 方法中用空格包围?