css bug(ie6兼容问题)

二、五大浏览器内核
1、trident(MSHTML)(三叉戟;三叉线,三齿鱼叉)
Gecko (壁虎)
presto(迅速的)
webkit(safari内核,Chrome内核原型,他是苹果公司自己的内核,也是苹果的撒safari浏览器使用的内核
BLINK(由谷歌和Opera software开发的浏览器排版引擎)
五大浏览器内核代表作品
*trident:IE。Maxthon(遨游),腾讯,Theworld世界之窗,360浏览器
代表作品IE,因为IE捆绑在windows中,所以占有极高的市场份额,又称|IE内核或是MSHTML,此内核只能应用于Windows平台,且是不开源的。
*Gecko:代表作品有Mozilla Firefox是开源的,它的最大优势是跨平台,能在Windows,Linux,和MacOS等主要操作系统上运行
*Webkit:代表作品:Safari,Chrome,遨游浏览器3,是一个开源项目。
*presto:代表作品有OPera(前内核),presto是由Opera software开发的浏览器排版引擎,它也是世界上公认的渲染速度最快的引擎,Opera现已改用Google Chrome的Blink内核。
*Blink:由谷歌和Opera software开发的;浏览器排版引擎,2013年4月发布
三,关于浏览器会出现浏览器兼容的问题?
由于各大主流浏览器由不同的厂家开发,所用的核心框架和代码也很难重合,这就为各种莫名其妙的Bug提供了温床,再加上各大厂商出于自身利益考虑而设置的种种技术壁垒,
都让css应用起来比想象中要麻烦,浏览器的兼容问题是我们必须去克服的。

css bug,css hack和filter
1》css bug:css样式在各浏览器中解析不一致的情况,或者说css样式在浏览器中不能正确显示的问题为css bug
2>css hack:css中,hack是指一种兼容css在不同浏览器中正确显示的技巧方法,因为他们都市属于个人对css代码的非官方的修改,
或者说是非官方的补丁,有些人更喜欢使用patch补丁来描述这种行为。

filter:表示过滤器的意思,它是一种对特定的浏览器或是浏览器组显示或影藏规则或声明的方法,本质上讲,filter是一种用来过滤不同浏览器的hack类型
用hack带来的一些副作用:
1》降低了css代码的可读性,增加了代码的负担
2》使用css hack和filter通常有两种方法:

1)图片间隙
div中的图片间隙,(该bug出现在所有的浏览器中)
在div中插入图片时,图片会将div下方撑大3像素。
hack:将<img>转为块元素,给img添加声明:display:block;
B》当图片横着排的时候。图片跟图片之间存在间距:hack:img{float:left}
2>dt,li中图片间隙
hack:将img元素转为块元素,给img添加声明:display:block;
3》双向浮向{双倍边距}{只有ie6出现}

描述:在ie6中,一个居左或居右,浮动的元素放置进一个容器盒{box},并在浮动元素上使用了左边距或右边距,在ie6内边产生双倍边距。
hack:给浮动元素添加声明:display:block
4》图片在IE浏览器上有蓝色的边框{加在a标签里}
hack:给img的边写成0:img{border:0}
5》默认高度{ie6,ie7}
表单元素距离顶部间距不一致,(IE,moi,c,o,s)
hack:给表单元素加申明:float:left
6:按钮元素默认大小不一
hack:统一大小:(用a标签模拟)
hack2:input外套一个标签,在这个标签里写按钮的样式,把input边框去掉
hack3:如果这个按钮是图片,直接写图片,直接将图片作为按钮背景图即可。

 

posted @ 2017-03-14 21:17  无花即无果  阅读(207)  评论(0编辑  收藏  举报