首页 > 解决方案 > 如何让 IE 11 为伪元素应用 CSS 更改,Chrome/FF 应用正常?

问题描述

此页面有一个带有两个复选框的表单,这些复选框具有自定义 CSS 样式。

如果您在 Chrome/Firefox 中查看页面并选中任何一个框(不是recaptcha,只是上面的两个复选框),黑色复选标记就会出现。但是,如果您查看 IE 11 中的页面并选中任一框,则不会显示复选标记。勾号已注册,但字体真棒复选标记未出现。

当复选框首次出现在页面上时,这是默认的 CSS。复选标记在那里,它只是颜色为白色,所以你看不到它:

input + label:before {
    content: "\f00c";
    font-family: 'FontAwesome';
    color: #fff;
    display: inline-block;
    width: 18px;
    height: 15px;
    font-size: 15px;
    background-color: #fff;
    border: 1px solid #000;
}

然后当你勾选复选框时,这个 CSS 应该接管(并且在 Chrome/FF 上,但不是 IE):

input:checked + label:before {
    content: "\f00c";
    font-family: 'FontAwesome';
    color: #000;
    display: inline-block;
    width: 18px;
    height: 15px;
    font-size: 15px;
}

任何想法如何让 IE 尊重检查操作以应用上面的第二个 CSS(实际上只是将颜色从白色变为黑色的部分)?

标签: cssinternet-explorerfont-awesome

解决方案


推荐阅读