今天在工作中编写jsp页面,打开后jsp页面总是默认以ie5文档模式进行解析,导致很多元素不兼容,js报错。
为了实现使用最新浏览器版本进行解析,在jsp页面的<head></head>标签中加入了<meta http-equiv="X-UA-Compatible" content="IE=edge"/>标签,打开jsp页面依然报错,meta标签没有生效。后来将该标 签放于jsp页面首行,打开jsp页面,meta标签生效。
为此进行了多次测试,发现是由于该jsp页面前面包含了其他页面,且所包含的页面中包含了java script 代码块,导致meta标签失效,后进行深入分析,发现当meta标签前存在java script代码块或 .js文件,meta标签都不能生效。
所以,meta标签的使用需要确保其前面没有java script代码块或 .js文件(包括前面所嵌入的页面也不能有)。