首先:
不同浏览器的内核不尽相同,所以浏览器对网页的解析也有所差异。
浏览器的内核主要分为两种: 一、 渲染引擎二、JS引擎。
所以浏览器的兼容问题 一般是 css兼容问题,js兼容问题。
二、浏览器的渲染内核
浏览器内核(渲染引擎) chrome谷歌之前的Webkit是Blink内核FireFox火狐GeckoSafari苹果WebkitIETridentOpera欧朋在谷歌chrome的Blink内核
三、css兼容问题
1 .按浏览器显示的选项卡默认(margin和 padding不同) ) ) ) ) ) ) ) ) )。
问题症状:随意写几个标签,不加样式控制的情况下,各自的边距和绘制的差异很大。
解决办法:第一:一般使用通配符(*)设置边距: 0。 垫: 0; 性能不好!
第二,通常引入reset.css样式重置(推荐)
2. css3新属性,加浏览器前缀兼容早期浏览器
-moz-/*火狐浏览器/-webkit-/Safari、谷歌浏览器等使用Webkit引擎的浏览器/-o-/Opera浏览器(初始(//ms--/ie ) /哪个css3
关键帧动画@keyframescss3的变形(变换)、过渡(动画)、border-radius圆角长方体阴影flex柔性布局
在块属性标签float后,又有横行的margin情况下,IE 浏览器margin加倍的问题:IE6中,后面的块被推到下一行
常见症状:这是ie6中也存在的错误。 解决方案是在这个div中添加display:inline
4. 解决办法
设置较小高度标签(一般小于10px),在IE6,IE7,遨游中高度超出自己设置高度设置div的高度小于10px,与IE6、7游泳中的div的高度超过自己设置的10px。
常见症状:
超越高度的标签上overflow:hidden; 或者,将行高设置为小于您设置的高度。 5. 解决办法
超链接访问过后hover样式就不出现的问题单击访问的超链接样式没有hover和active
3358 www.Sina.com/:改变CSS属性的排列顺序:L-V-H-A
syle type=' text/CSS ' a : link { } a : visited { } a : hover { } a : active { }/style6.图像有默认间隔
常见症状:如果有几个img标签在一起,则某些浏览器会有默认的空间通配符,清除空间后将无法正常工作。
33558使用www.Sina.com/float属性的img布局(所有图像都向左浮动) ) ) ) )。
解决办法
通过浏览器识别不同的样式。 csshack本身是处理浏览器兼容性的。
css hack的写法如下所示。
background-color:yellow0; 0是留在ie8的background-color:pink; ie7决定了; _background-color:orange; _专门针对魔法ie6的常见症状:
解决办法:(font-size:0)