浏览器兼容器
① 什么是浏览器的兼容性
浏览器的兼容性是指网页在各种浏览器上的显示效果可能不一致而产生浏览器和专网页间的属兼容问题。
在网站的设计和制作中,做好浏览器兼容,才能够让网站在不同的浏览器下都正常显示。而对于浏览器软件的开发和设计,浏览器对标准的更好兼容能够给用户更好的使用体验。浏览器兼容的重要性:
1、网站做好了浏览器兼容,能够让网站在不同的浏览器下都正常显示。
2、浏览器兼容能够抓住更多的网站访客。
3、浏览器兼容能够给客户更好的体验。
(1)浏览器兼容器扩展阅读:
兼容趋势
1、浏览器大战后期的Internet Explorer和Netscape Navigator两大浏览器都支持HTML 4.0和CSS 1,使得许多专用语法失去意义而被废止。
2、客户端脚本方面,浏览器大战的产物DOM变成了浏览器间操控技术的共同界面;对专有方法已有涵盖。
3、浏览器市场扩大,网站为了宣称自己的兼容能力,一般都能在Mozilla Firefox、Opera、Safari和传统阵营的Internet Explorer、Netscape Navigator正常被浏览。
4、浏览器的兼容能力日益受到需要;浏览器亦因应趋势,使自己的浏览器提供更多兼容功能。
② 浏览器兼容性问题
常见浏览器兼容性问题与解决方案(面试题目)
1,浏览器兼容问题一:不同浏览器的标签默认的margin和padding不同
问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。
碰到频率:100%
解决方案:
可以使用Normalize来清除默认样式,具体可参考文章:来,让我们谈一谈 Normalize.css
也可以使用如下代码:
body,h1,h2,h3,ul,li,input,div,span,a,form …… { margin:0; padding:0; }
2,浏览器兼容问题二:块属性标签float后,又有横行的margin情况下,在IE6显示margin比设置的大
问题症状:常见症状是IE6中后面的一块被顶到下一行
碰到频率:90%(稍微复杂点的页面都会碰到,float布局最常见的浏览器兼容问题)
解决方案:在float的标签样式控制中加入 display:inline;将其转化为行内属性
备注:我们最常用的就是div+CSS布局了,而div就是一个典型的块属性标签,横向布局的时候我们通常都是用div float实现的,横向的间距设置如果用margin实现,这就是一个必然会碰到的兼容性问题。
3,浏览器兼容问题三:设置较小高度标签(一般小于10px),在IE6,IE7,遨游中高度超出自己设置高度
问题症状:IE6、7和遨游里这个标签的高度不受控制,超出自己设置的高度
碰到频率:60%
解决方案:给超出高度的标签设置overflow:hidden;或者设置行高line-height 小于你设置的高度。
备注:这种情况一般出现在我们设置小圆角背景的标签里。出现这个问题的原因是IE8之前的浏览器都会给标签一个最小默认的行高的高度。即使你的标签是空的,这个标签的高度还是会达到默认的行高。
4,浏览器兼容问题四:行内属性标签,设置display:block后采用float布局,又有横行的margin的情况,IE6间距bug
问题症状:IE6里的间距比超过设置的间距
碰到几率:20%
解决方案:在display:block;后面
③ 经常遇到的浏览器的兼容性有哪些
1,浏览器兼容问题一:不同浏览器的标签默认的margin和padding不同
问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。
碰到频率:100%
解决方案:
CSS里加一行
1
*{margin:0;padding:0;}
备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的CSS文件开头都会用通配符*来设置各个标签的内外补丁是0。
2,浏览器兼容问题二:块属性标签float后,又有横行的margin情况下,在IE6显示margin比设置的大
问题症状:常见症状是IE6中后面的一块被顶到下一行
碰到频率:90%(稍微复杂点的页面都会碰到,float布局最常见的浏览器兼容问题)
解决方案:在float的标签样式控制中加入 display:inline;将其转化为行内属性
备注:最常用的就是div+CSS布局了,而div就是一个典型的块属性标签,横向布局的时候通常都是用div float实现的,横向的间距设置如果用margin实现,这就是一个必然会碰到的兼容性问题。
3,浏览器兼容问题三:设置较小高度标签(一般小于10px),在IE6,IE7,遨游中高度超出自己设置高度
问题症状:IE6、7和遨游里这个标签的高度不受控制,超出自己设置的高度
碰到频率:60%
解决方案:给超出高度的标签设置overflow:hidden;或者设置行高line-height 小于你设置的高度。
备注:这种情况一般出现在设置小圆角背景的标签里。出现这个问题的原因是IE8之前的浏览器都会给标签一个最小默认的行高的高度。即使你的标签是空的,这个标签的高度还是会达到默认的行高。
4,浏览器兼容问题四:行内属性标签,设置display:block后采用float布局,又有横行的margin的情况,IE6间距bug
问题症状:IE6里的间距比超过设置的间距
碰到几率:20%
解决方案:在display:block;后面加入display:inline;display:table;
备注:行内属性标签,为了设置宽高,需要设置display:block;(除了input标签比较特殊)。在用float布局并有横向的margin后,在IE6下,它就具有了块属性float后的横向margin的bug。不过因为它本身就是行内属性标签,所以再加上display:inline的话,它的高宽就不可设了。
5,浏览器兼容问题五:图片默认有间距
问题症状:几个img标签放在一起的时候,有些浏览器会有默认的间距,加了问题一中提到的通配符也不起作用。
碰到几率:20%
解决方案:使用float属性为img布局
备注:因为img标签是行内属性标签,所以只要不超出容器宽度,img标签都会排在一行里,但是部分浏览器的img标签之间会有个间距。去掉这个间距使用float是正道。(我的一个学生使用负margin,虽然能解决,但负margin本身就是容易引起浏览器兼容问题的用法,所以我禁止他们使用)
6,浏览器兼容问题六:标签最低高度设置min-height不兼容
问题症状:因为min-height本身就是一个不兼容的CSS属性,所以设置min-height时不能很好的被各个浏览器兼容
碰到几率:5%
解决方案:如果要设置一个标签的最小高度200px,需要进行的设置为:{min-height:200px; height:auto !important; height:200px; overflow:visible;}
备注:在B/S系统前端开时,有很多情况下有这种需求。当内容小于一个值(如300px)时。容器的高度为300px;当内容高度大于这个值时,容器高度被撑高,而不是出现滚动条。这时候就会面临这个兼容性问题。
(3)浏览器兼容器扩展阅读:
浏览器兼容性解决方案:
1,对于一般用户来说:
应该用ie8兼容模式浏览网页, 而不应该用ie9或ie10渲染模式. 很多用户安装ie10后发生很多网页显示错乱, 就是兼容性的原因, 因为ie10默认的渲染模式是ie10. 此时应该将其改为ie7渲染模式。
用ie6/7渲染模式的原因如下:
中国所有网页肯定都支持ie,支持ie就是支持ie内核的所有浏览器. 但并不一定支持chrome, firefox,双核浏览器的高速模式,原因很简单,网页开发人员没有那么多时间和精力去兼容及测试那么多浏览器,开发人员能让网页在ie下正常工作已经不错了。
2,对于网站开发者来说:
暂没有统一的能解决这样的工具,最普遍的解决办法就是不断的在各浏览器间调试网页显示效果,通过对css样式控制以及通过脚本判断并赋予不同浏览器的解析标准。
如果所要实现的效果可以使用 框架,那么还有另一个解决办法是在开发过程中使用当前比较流行的JS,CSS框架框架,如jQuery,YUI等等,因为这些框架无论是底层的还是应用层的一般都已经做好了浏览器兼容,所以可以放心使用。
除此之外,CSS提供了很多hack接口可供使用,hack既可以实现跨浏览器的兼容,也可以实现同一浏览器不同版本的兼容。
④ 如何解决不同浏览器之间的兼容性问题
工具/原料
电脑 QQ浏览器
方法/步骤
1、首先打开电脑,在电脑桌面上找到QQ浏览器图标双击。
⑤ 哪些浏览器兼容IE
遨游,世界之窗,绿色浏览器,腾讯TT,360浏览器,这些知名的浏览器全部是IE内核,所以完全兼容
火狐
谷歌浏览器是自己单独的内核,不兼容IE。
⑥ 浏览器兼容
现在主流的浏览器分为ie核心的和非ie,大多数网页多支持ie核心的浏览器,所以就出现了非ie核心浏览器兼容性问题,而火狐就属于非ie核心浏览器。我建议你用ie核心的浏览器试试,如世界之窗之类的。
⑦ 浏览器兼容性
在浏览器的地址栏中就可以设置浏览器的兼容模式的,
挺方便的,我也用过很多的浏览器,所以对浏览器还是
有一定的认识的,建议不要使用UC浏览器,这款浏览器的兼容
性不是很好,并且安全性也不高,总是出现各种各样的问题,
现在的浏览器的选择范围还是很多的,像QQ浏览器,网络浏览器,
搜狗浏览器等等都是很不错的呢,我现在一直在用QQ浏览器9.0版
的,感觉很不错的,可以试试哦
⑧ 什么是ie浏览器兼容模式
现在微软的IE浏览器的最新版本是IE11,但是有些网页或者是OA系统只能在IE8或者IE7下面才能正常运行,为了高版本的IE浏览器能够正常的呈现那些网页,所以才有了IE浏览器兼容模式。例如原来的网银就是兼容模式的一个例子