检测当前页面的浏览器渲染模式可以通过以下方法实现:
function detectBrowserRenderingMode() {
var userAgent = navigator.userAgent;
if (userAgent.indexOf("Trident") > -1) {
return "IE模式";
} else if (userAgent.indexOf("Gecko") > -1 && userAgent.indexOf("KHTML") == -1) {
return "Gecko模式";
} else if (userAgent.indexOf("Presto") > -1) {
return "Presto模式";
} else if (userAgent.indexOf("WebKit") > -1) {
return "WebKit模式";
} else if (userAgent.indexOf("Blink") > -1) {
return "Blink模式";
} else {
return "未知模式";
}
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
/* IE模式 */
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
/* WebKit模式 */
}
@media screen and (-moz-min-device-pixel-ratio:0) {
/* Gecko模式 */
}
@media screen and (-o-min-device-pixel-ratio:0) {
/* Presto模式 */
}
@media screen and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {
/* Blink模式 */
}
需要注意的是,这些方法并不能保证100%准确地检测出浏览器渲染模式,因为浏览器的UserAgent字符串和CSS特性可能会被修改或伪造。因此,在实际应用中需要根据具体情况进行调整和优化。
领取专属 10元无门槛券
手把手带您无忧上云