ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:27.87KB ,
资源ID:6845276      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6845276.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(浏览器兼容性大全.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

浏览器兼容性大全.docx

1、浏览器兼容性大全浏览器兼容性浏览器的内核Mozilla Firefox ( Gecko )Internet Explorer ( Trident )Opera ( Presto )Safari ( WebKit )Google Chrome ( WebKit )腾讯TT、世界之窗、360浏览器、遨游浏览器都是给IE加了个外壳,不过如果电脑上装的是ie8的话,这些浏览器还是调用ie7的内核。搜狗浏览器比较特殊,它有两种浏览模式:一是兼容模式,该模式使用IE内核;二是高速模式,该模式使用WebKit内核。解决ie7、ie8兼容性最好的办法是在head标签中加入meta 类型,只要IE8一读到这个标

2、签,它就会自动启动IE7兼容模式CSS Hack解决浏览器兼容性问题的主要方法是CSS hack。由于不同的浏览器,比如Internet Explorer 6,Internet Explorer 7,Mozilla Firefox等,对CSS的解析认识不一样,因此会导致生成的页面效果不一样,得不到我们所需要的页面效果。这个时候我们就需要针对不同的浏览器去写不同的CSS,让它能够同时兼容不同的浏览器,能在不同的浏览器中也能得到我们想要的页面效果。这个针对不同的浏览器写不同的CSS code的过程,就叫CSS hack,也叫写CSS hack。CSS Hack的原理是什么由于不同的浏览器对CSS的

3、支持及解析结果不一样,还由于CSS中的优先级的关系。我们就可以根据这个来针对不同的浏览器来写不同的CSS。比如 IE6能识别下划线_和星号 * ,IE7能识别星号 * ,但不能识别下划线_,而firefox两个都不能认识。等等各浏览器CSS hack兼容表:IE6IE7IE8FirefoxOperaSafari!importantYYYYY_Y*YY*+Y9YYY0Ynth-of-type(1)YY如何解决浏览器的兼容性在head标签中加入meta 类型,这样就解决了ie7、ie8兼容问题。现在剩下ie6、ie7、Firefox、Chrome(Safari与Chrome使用同一内核)、Oper

4、a这几种浏览器的兼容性问题,我们需要使用CSS Hack来解决该问题。代码如下所示:浏览器兼容性问题.t1 color:#000000; /* 所有浏览器都支持 此处填写Firefox的css*/ *color:#0000FF; /* ie6 id7 支持 此处填写ie7的css*/ _color:#66CCCC; /* ie6支持 此处填写ie6的css*/media all and (-webkit-min-device-pixel-ratio:10000), not all and (-webkit-min-device-pixel-ratio:0) .t1color:#9900FF /

5、* oprea支持 此处填写oprea的css*/media screen and (-webkit-min-device-pixel-ratio:0).t1color:#336600/* Chrome、Safari支持 此处填写Chrome的css*/ff、ie8、ie7、ie6、oprea、Safari兼容性css 书写模式.t1 color:#000000; /* 所有浏览器都支持 此处填写Firefox的css*/ *color:#0000FF; /* ie6 id7 支持 此处填写ie7的css*/ _color:#66CCCC; /* ie6支持 此处填写ie6的css*/* op

6、rea支持此处填写oprea的css*/media all and (-webkit-min-device-pixel-ratio:10000), not all and (-webkit-min-device-pixel-ratio:0) .t1color:#CC66FF/* Chrome、Safari支持 此处填写Chrome的css*/media screen and (-webkit-min-device-pixel-ratio:0).t1color:#336600常见的浏览器兼容问题Css样式是与DOCTYPE引入的W3C/DTD有关的,不同的dtd对css的解析也不同,我们现在统一

7、使用css兼容问题:1. 默认的内外边距不同问题:各个浏览器默认的内外边距不同解决:*margin:0;padding:0;2. 水平居中的问题问题:设置 text-align: center ie6-7文本居中,嵌套的块元素也会居中ff /opera /safari /ie8文本会居中,嵌套块不会居中解决:块元素设置 1、margin-left:auto;margin-right:auto2、margin:0 auto;3、3. 垂直居中的问题问题:在浏览器中 想要垂直居中,设置vertical-align:middle; 不起作用。例如:ie6下文本与文本输入框对不齐,需设置vertica

8、l-align:middle1,但是文本框的内容不会垂直居中解决:给容器设置一个与其高度相同的行高line-height:与容器的height一样4. 关于高度问题问题:如果是动态地添加内容,高度最好不要定义。浏览器可以自动伸缩,然而如果是静态的内容,高度最好定好。如果设定了高度,内容过多时,ie6下会自动增加高度、其他浏览器会超出边框解决:1.设置overflow:hidden;2.高度自增height:auto!important;height:100px; 5. IE6 默认的div高度问题:ie6默认div高度为一个字体显示的高度,所在ie6下div的高度大于等于一个字的高度,因此在i

9、e6下定义高度为1px的容器,显示的是一个字体的高度解决:为这个容器设置下列属性之一1、设置overflow:hidden;2、设置line-height:1px;3、设置zoom:0.086. IE6 最小高度(宽度)的问题问题:ie6不支持min-height、min-width属性,默认height是最小高度,width是最小宽度。解决: 使用ie6不支持但其余浏览器支持的属性!important。设置属性min-height:200px; height:auto !important; height:200px; 7. td高度的问题问题:table中td的宽度都不包含border的宽

10、度,但是oprea和ff中td的高度包含了border的高度解决: 设置line-height和height一样。在ie中如果td中的没有内容,那么border将不会显示8. div嵌套p时,出现空白行问题:div中显示文本,ff、oprea、Chrome:top和bottom都会出现空白行,但是在ie下不会出现空白行。解决:设置p的margin:0px,再设置div的padding-top和padding-bottom9. IE6-7图片下面有空隙的问题问题:块元素中含有图片时,ie6-7中会出现图片下有空隙解决: 1、在源代码中让和在同一行2、将图片转换为块级对象display:block

11、;3、设置图片的垂直对齐方式 vertical-align:top/middle/bottom4、改变父对象的属性,如果父对象的宽、高固定,图片大小随父对象而定,那么可以对父元素设置: overflow:hidden; 5、设置图片的浮动属性 float:left;10. IE6双倍边距的问题问题:ie6中设置浮动,同时又设置margin时,会出现双倍边距的问题例float:left;width:100px;margin:0 100px; 解决: 设置display:inline;11. IE6 weidth为奇数,右边多出1px的问题问题:父级元素采用相对定位,且宽度设置为奇数时,子元素采用

12、绝对定位,在ie6中会出现右侧多出1像素 解决:将宽度的奇数值改成偶数12. IE6两个层之间3px的问题问题: 左边层采用浮动,右边没有采用浮动,这时在ie6中两层之间就会产生3像素的间距解决:1、右边层也采用浮动 float2、左边层添加属性 margin-right:-3px;13. IE6 子元素绝对定位的问题问题: 父级元素使用padding后,子元素使用绝对定位,不能精确定位解决: 在子元素中设置 _left:-20px; _top:-1px;14. 显示手型cursor:hand问题: ie6/7/8、opera 都支持 但是safari 、 ff 不支持解决:写成 cursor

13、:pointer; (所有浏览器都能识别) 15. IE6-7 line-height失效的问题问题: 在ie中img与文字放一起时, line-height不起作用 解决:都设置成float16. td自动换行的问题问题:Table宽度固定,td自动换行解决:设置Table的table-layout:fixed,td的word-wrap:break-word17. 子容器浮动后,父容器扩展问题问题:子容器都float以后,父容器没有设定高度,父容器将不会扩展解决:只需要添加一个clear:both的div,代码如下: 子容器a 子容器b 18. 透明png图片会带背景色问题:在ie6下透明的

14、png图片会带一个背景色解决:background-image: url(icon_home.png);/* 其他浏览器 */background-repeat: no-repeat;_filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=icon_home.png); /* IE6 */_background-image: none; /* IE6 */19. list-style-position默认值的问题问题:ie下list-style-position默认为inside, firefox默认为outside解决:c

15、ss中指定为outside即可解决兼容性问题20. list-style-image准确定位的问题问题: li前设置图片时,图片与其后的文字对齐问题解决:1、采用背景定位 和 字符缩进的方法background:url() no-repeat left center; text-index:16px;2、采用相对定位方法li 设置list-style:url();li的子元素position:relative;top:-5px;21. ul标签默认值的问题问题: ul标签在ff中默认是有padding值的,而在ie中只有margin有值解决: 定义ulmargin:0;padding:0;就能

16、解决大部分问题22. IE中li指定高度后,出现排版错误问题:在ie下如果为li指定高度可能会出现排版错位解决: 设置line-height23. ul或li浮动后,显示在div外问题:div中的ul或li设置float以后,都不在div中解决:必须在ul标签后加来闭合外层div24. ul浮动后,margin变大问题:ul设置 float后,在ie中margin将变大解决:设置ul的display:inline,li的list-style-position:outside25. li浮动后,margin变大问题:li设置 float后,在ie中margin将变大解决:设置li的display

17、:inline26. 嵌套使用ul、li的问题问题: ie的bug,嵌套使用ul、li时,里层的li设置float以后,外层li不设置float, 里面的ul顶部和它外面的li总是有一段间距解决:设置里面的ul的zoom:127. IE6-7 li底部有3px的问题问题: 这个bug产生的充要条件是li的子元素浮动并且li设置了以下CSS属性之一:width、height、zoom、padding-top、padding-bottom、margin-top、margin-bottom。解决:1、div设置clear:left|both,这时li不能设置width、height、zoom。 2、

18、li设置float:left,这时li可以设置width、height、zoom。 3、li设置clear:left|both,这时li不能设置width、height、zoom。 4、IE6/IE7的这个Bug可以通过给li中的div设置vertical-align:top|middle|bottom解决。28. IE6 垂直列表间隙的问题问题: li中有a且设置display:block时,ie6中列表间会出现空隙解决:1、li中加display:inline;2、li使用float 然后 clear:both;3、给包含的文本末尾添加一个空格4、设置width29. IE6 列表背景颜色

19、失效的问题问题:当父元素设置position:relative;时,在ie6中第一个ul、ol、dl的背景颜色失效解决: ul、ol、dl 都设置为position:relative;30. IE6-7 列表背景颜色失效的问题2问题:做横向导航栏时,ul设置为float且有背景色,li设置为float。ie6-7背景颜色失效解决:很多ie的bug都可以通过触发layout来解决 ul添加属性1、height:1%;2、float:left;3、zoom:1;31. 列表不能换行的问题问题: li设置为浮动,后面的li紧随其后,不能换行解决:1、为这个ul定义合适的宽高2、给包含这个ul 的父d

20、iv定义合适的宽高。32. li中的内容以省略号显示问题:li中内容超过长度时,想以省略号显示,此方法适用于ie6-7-8、opera、safari浏览器ff浏览器不支持解决:liwidth:200px; white-space:nowrap;text-overflow:ellipsis; -o-text-overflow:ellipsis; overflow: hidden; 33. 超链接访问过后hover样式不出现的问题问题: 点击超链接后,hover、active样式没有效果解决: 改变CSS属性的排列顺序: L-V-H-A 34. 禁用中文输入法的问题问题: 不能在输入框中输入汉字解

21、决:只在ie系列 和ff中有效ime-mode:disabled (但可以粘贴)禁用粘贴:onpaste=return false35. 除去滚动条的问题问题: 隐藏滚动条解决:1、只有ie6-7支持2、除ie6-7不支持 bodyoverflow:hidden3、所有浏览器 htmloverflow:hidden36. 让层显示在FLASH之上问题: 想让层的内容显示在flash上解决:把FLASH设置透明1、2、37. 去除链接虚线边框的问题问题:当点击超链接后,ie6/7/8 ff会出现虚线边框 ,而opera、safari没有虚线边框解决:ie6/7中 设置为a blr:express

22、ion(this.onFocus=this.blur() ie8 和 ff 都不支持expression 在ie8 、ff中设置为 :focus outline: none; 38. css滤镜的问题问题: css滤镜只在ie中有效,Firefox, Safari(WebKit), Opera只能够设置透明,它们不支持滤镜filter,无法实现图片切换中间变换的效果,只能通过透明度来设置。解决: ff中设置透明度 -moz-opacity:0.10; opacity:0.6;ie中只设置filter:alpha(opacity=50); 时,ie6-7失效,还要设置1、zoom:1; 2、wi

23、dth:100%;39. IE6背景闪烁的问题问题: 链接、按钮用CSS sprites作为背景,在ie6下会有背景图闪烁的现象。原因是:IE6没有将背景图缓存,每次触发hover的时候都会重新加载解决: 可以用JavaScript设置ie6缓存这些图片:document.execCommand(BackgroundImageCache ,false,true);40. 出现重复文字的问题问题: 这就是多出来的那只猪解决:1、 改变结构,不出现【一个容器包含2两个具有“float”样式的子容器】的结构。2、减小第二个容器的宽度,使父容器宽度减去第二个容器宽度的值大于33、去掉所有的注释。4、修

24、正注释的写法。这里是注释内容5、在第二个容器后面加一个或者多个来解决。41. ff、chrome绝对定位无效问题:在IE给td设置position:relative,然后给它包含的一个容器使用position:absolute进行定位是有效的,但在FF和Chrome下却不可以。解决:设置td的display:block。42. IE6 绝对定位的问题问题:dovapour内容解决:left的定位错误问题1、给父层设置zoom:1触发layout。 2、给父层设置宽度widthbottom的定位错误问题1、给父层设置zoom:1触发layout。 2、给父层设置高度height43. 子容器宽度大于父容器宽度时,内容超出问题:子DIV的宽度和父DIV的宽度都已经定义,在IE6中如果其子DIV的宽度大于父DIV的宽度,父DIV的宽度将会被扩展,在其他浏览器中父DIV的宽度将不会扩展,子DIV将超出父DIV解决:设置overflow:hidden,子DIV将不会超出父DIV。44. float的div闭合的问题问题: 例如:#di

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1