- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
IE浏览器兼容性问题的简单和有用的不同版本
不同版本的IE的内核是不同的,对于前台网页代码的兼容性也有很大
的差异行,比较明显的IE6和IE8在div标签上的使用有这很大的差异,
在IE6中div是有默认的行高的,即使你给它设定的height为固定的值
看,但是真正显示的时候,效果和你理想中的效果还是有很大的差异
,甚至界面完全无法看。
在网上有很多的不同ie浏览器的兼容问题的文档说明,基本都是css
式样的区别说明和解决方法,但是,我在这里想说的是我们开发一个
项目要针对的是大众的浏览器,是所有的内容都要兼容,不是某一个
css兼容了就可以了,如何才能使你的项目有像百度那样的兼容性呢?
这里我给大家一个方法,虽然没有IE的那么简单,但是这个却容易
理解,适用于初学者:
首先我们要做的就是判断IE浏览器的版本(也就是内核),
function checkBrowser(){
var browser=navigator.appName;
var b_version=navigator.appVersion;
var version=b_version.split(;);
var trim_Version=version[1].replace(/[
]/g,);
if(browser==Microsoft Internet Explorer
trim_Version==MSIE6.0)
{
alert(6.0);
}
else if(browser==Microsoft Internet
Explorer trim_Version==MSIE7.0)
{
alert(7.0);
}
else if(browser==Microsoft Internet
Explorer trim_Version==MSIE8.0)
{
alert(8.0);
}
else if(browser==Microsoft Internet
Explorer trim_Version==MSIE9.0)
{
alert(9.0);
}
}
这个就是判断你所使用的IE是哪个版本的,接下来要做的就是针对不同的版本的浏览器写不同的前台代码了。
以下是不同版本IE的css式样兼容问题的说明,大家可以参考这以下内容进行编写代码:
DIV+CSS相对IE6、IE7和IE8的兼容问题:
针对div的默认高度问题如下代码可以解决:
font-size:0;(因为div有默认字体高度)
针对div中的table 显示滚动条:
给div加:display:block;overflow-x:auto; overflow-y:auto;height:--px;(其中x轴和Y轴的滚动条的显示通过overflow来调节,大家可以酌情而定)
CSS对浏览器的兼容性有时让人很头疼,或许当你了解当中的技巧跟原理,就会觉得也不是难事,从网上收集了IE7,6与Fireofx的兼容性处理方法并整理了一下.对于web2.0的过度,请尽量用xhtml格式写代码,而且DOCTYPE 影响 CSS 处理,作为W3C的标准,一定要加 DOCTYPE声名.
CSS技巧:
1.div的垂直居中问题
vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然后插入文字,就垂直居中了。缺点是要控制内容不要换行
2. margin加倍的问题
设置为float的div在ie下设置的margin会加倍。这是一个ie6都存在的bug。解决方案是在这个div里面加上display:inline;
例如:#div id=”imfloat” 相应的css为 #IamFloat{float:left; margin:5px;/*IE下理解为10px*/display:inline;/*IE下再理解为5px*/}
3.浮动ie产生的双倍距离
#box{ float:left; width:100px; margin:0 0 0 100px; //这种情况之下IE会产生200px的距离 display:inline; //使浮动忽略}
这里细说一下block与inline两个元素:block元素的特点是,总是在新行上开始,高度,宽度,行高,边距都可以控制(块元素);Inline元素的特点是,和其他元素在同一行上,不可控制(内嵌元 素); #box{ display:block; //可以为内嵌元素模拟为块元素 display:inline;
文档评论(0)