IE浏览器的一些兼容性问题

[文章作者:磨延城 转载请注明原文出处: https://mo2g.com/view/129/ ]

最近正好在招聘WEB程序开发人员,心血来潮就把招聘信息放到了公司网站的源代码里,让更合适的人看到.下边就分享一下可能会出现的问题及解决方案.

最近正好在招聘WEB程序开发人员,心血来潮就把招聘信息放到了公司网站的源代码里,让更合适的人看到。下边就分享一下可能会出现的问题及解决方案。

1)为了让招聘信息更显眼一些,有些网站会把隐藏信息写在文档开头,例如:

<!--
招聘信息
-->
<!DOCTYPE html>
<html>
<head>
<title>某某网站</title>
</head>
<body>
文档的内容
</body>
</html>

乍一看似乎没什么问题,但到了IE8或更老的浏览器,问题就来了,浏览器就会进入怪异模式。

由于历史原因,浏览器文档的解析类型(document.compatMode)有两种:

A)BackCompat:浏览器使用自己的模式解析渲染页面。

B)CSS1Compat:浏览器使用W3C的标准解析渲染页面。

如果浏览器在解析文档前没有找到DOCTYPE的声明,那么compatMode默认就是BackCompat,这就导致某些浏览器,使用自己的模式解析渲染页面,更会导致兼容性问题。所以,正确的写法如下:

<!DOCTYPE html>
<!--
招聘信息
-->
<html>
<head>
<title>某某网站</title>
</head>
<body>
文档的内容
</body>
</html>

这就不会导致怪异的兼容问题了。

2)通过console.log('招聘信息')的方式,在控制台显示招聘信息。

对于IE9或更老的浏览器,会提示:'console' is undefined (console未被定义) 错误,所以如果要考虑兼容IE9及以下的浏览器,就得通过如下方式

if (window.console) { ... }

包住console.log()相关代码即可。

从IE10开始,就没这个问题了。

    评论:

    1. 暂无评论...
    2. 我来说两句:

        切换  

      磨途歌检测发现,您当前使用的浏览器版本过低,要想使用画板模式,请先更新浏览器

        切换  

      磨途歌随机验证码