一、ie 强制最新版本渲染(兼容性视图 )
强制使用ie最新版本渲染可分为两种方式
- 1). 前端
<!-- 前端方式 大多数人比较了解 -->
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
</head>
- 2). 服务端
/***
* 服务端可以想响应头中添加 X-UA-Compatible 属性
* 本次问题解决方式是向所以的响应中添加该属性 使ie使用最高版本渲染 禁止使用兼容模式
* 解决方案 添加filter 拦截 对所有响应中添加
*/
public class RespFilter implements Filter{
@Override
public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain chain)
throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest req=(HttpServletRequest)arg0;
HttpServletResponse resp=(HttpServletResponse)arg0;
resp.setHeader("X-UA-Compatible","IE=edge,chrome=1");
chain.doFilter(req,resp);
}
}
@Configuration
public class MyConfiguration {
@Bean
public FilterRegistrationBean<RespFilter> respFilterRegistrationBean(){
//通过FilterRegistrationBean实例设置优先级可以生效
//通过@WebFilter无效
FilterRegistrationBean<RespFilter> bean = new FilterRegistrationBean<RespFilter>();
bean.setFilter(new RespFilter());//注册自定义过滤器
bean.setName("respflilter");//过滤器名称
bean.addUrlPatterns("/*");//过滤所有路径
bean.setOrder(1);//优先级,最顶级
return bean;
}
}