Css IE11下载多个图标文件,而不是一个
我有一个webapp,它使用@font-face来显示TinyMCE图标。在本地运行应用程序时,这些图标会按照IE11中的预期显示。但是,当部署到云服务器时,图标不会出现在IE11中。我已经编辑了我的@font-face,将.eot文件从等式中去掉,以便所有浏览器都只获取.woff。此外,在我的应用程序的本地和远程版本上,图标会按照Chrome、Safari和Firefox的预期加载和显示。我注意到两个关键点:Css IE11下载多个图标文件,而不是一个,css,fonts,icons,font-face,Css,Fonts,Icons,Font Face,我有一个webapp,它使用@font-face来显示TinyMCE图标。在本地运行应用程序时,这些图标会按照IE11中的预期显示。但是,当部署到云服务器时,图标不会出现在IE11中。我已经编辑了我的@font-face,将.eot文件从等式中去掉,以便所有浏览器都只获取.woff。此外,在我的应用程序的本地和远程版本上,图标会按照Chrome、Safari和Firefox的预期加载和显示。我注意到两个关键点: 在本地应用程序(通过HTTP)上,IE11获得图标文件tinymce.woff,没有
@font-face{font-family:'tinymce';
src:url('fonts/tinymce.woff') format('woff'),
url('fonts/tinymce.ttf')format('truetype'),
url('fonts/tinymce.svg#tinymce') format('svg');
font-weight:normal;
font-style:normal}
不看演示就很难猜到。但是由于IE11下载了一个EOT,而这个EOT并不存在于你的
@font-face
规则中,看起来你认为正在执行的CSS并不是浏览器使用的CSS
如果@font-face
规则没有问题(但是您在此处复制/粘贴了错误的字体),那么可能字体上没有设置可安装位。IE11需要这样做,但另一方面,您可能希望图标字体能够解决这个问题
也有可能mime类型在提供的字体上设置不正确。有关一些疑难解答选项,请参阅
而且,如果您找到了解决方案,请将其张贴在此处,以便其他人也可以学习!:-) 不看演示就很难猜到。但是由于IE11下载了一个EOT,而这个EOT并不存在于你的
@font-face
规则中,看起来你认为正在执行的CSS并不是浏览器使用的CSS
如果@font-face
规则没有问题(但是您在此处复制/粘贴了错误的字体),那么可能字体上没有设置可安装位。IE11需要这样做,但另一方面,您可能希望图标字体能够解决这个问题
也有可能mime类型在提供的字体上设置不正确。有关一些疑难解答选项,请参阅
而且,如果您找到了解决方案,请将其张贴在此处,以便其他人也可以学习!:-) 解决方案确实是去掉“pragma”标题。因为我的项目是一个Spring启动应用程序,所以我在安全配置类中创建了一个头过滤器。要创建Spring安全配置类,请执行以下操作: 1.创建一个扩展org.springframework.security.config.annotation.web.configuration.websecurityConfigureAdapter的类。 2.为类提供以下注释: -@配置(org.springframework.context.annotation.Configuration) -@EnableWebSecurity(org.springframework.security.config.annotation.web.configuration.EnableWebSecurity) -@EnableGlobalMethodSecurity(securedEnabled=true,Preprestenabled=true)(org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity)
public HeaderWriter cacheControlHeaderWriter()
{
return new DelegatingRequestMatcherHeaderWriter(
new NegatedRequestMatcher(new RegexRequestMatcher(".+\\.((eot(\\?)?)|(woff2?)|(ttf)|(svg))", "GET")),
new CacheControlHeadersWriter()
);
}
解决方案确实是去掉“pragma”标题。因为我的项目是一个Spring启动应用程序,所以我在安全配置类中创建了一个头过滤器。要创建Spring安全配置类,请执行以下操作: 1.创建一个扩展org.springframework.security.config.annotation.web.configuration.websecurityConfigureAdapter的类。 2.为类提供以下注释: -@配置(org.springframework.context.annotation.Configuration) -@EnableWebSecurity(org.springframework.security.config.annotation.web.configuration.EnableWebSecurity) -@EnableGlobalMethodSecurity(securedEnabled=true,Preprestenabled=true)(org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity)
public HeaderWriter cacheControlHeaderWriter()
{
return new DelegatingRequestMatcherHeaderWriter(
new NegatedRequestMatcher(new RegexRequestMatcher(".+\\.((eot(\\?)?)|(woff2?)|(ttf)|(svg))", "GET")),
new CacheControlHeadersWriter()
);
}
很抱歉给你带来了困惑。我在编辑@font-face配置,看看是否可以强制IE11下载*.woff而不是*.eot,以防解决问题。它没有解决这个问题。另外,在复制+粘贴配置时,我会忽略*.eot选项。然而,在我本地构建的应用程序中,当我强制IE11下载*.woff时,它会很好地播放,并显示图标。在云实例上没有这么多。很抱歉造成混淆。我在编辑@font-face配置,看看是否可以强制IE11下载*.woff而不是*.eot,以防解决问题。它没有解决这个问题。另外,在复制+粘贴配置时,我会忽略*.eot选项。然而,在我本地构建的应用程序中,当我强制IE11下载*.woff时,它会很好地播放,并显示图标。在云实例上没有这么多。