不同浏览器兼容问题

来源:互联网 发布:淘宝评价回复感谢语 编辑:程序博客网 时间:2024/05/17 06:56

1.不同浏览器默认的内外边距不同

* {    margin: 0;    padding: 0;}

2.鼠标移动到元素上显示手型

cursor: pointer; // 所有浏览器都识别cursor: hand; // safari、firefox不支持

3.块属性标签float后,又有横行的margin情况下,在ie6显示margin比设置的大

// 在float的标签样式控制中加入 display:inline;将其转化为行内属性{    display: inline;}

4.设置较小高度标签(一般小于10px),在ie6,ie7,遨游中高度超出自己设置高度

给超出高度的标签设置overflow:hidden;或者设置行高line-height 小于你设置的高度。

5.透明度的兼容

{    filter: alpha(opacity: 30);  // IE    opacity: 0.3;  // FIrefox、chrome}

/* css hack*/
使用hacker 我可以吧浏览器分为3类:ie6 ;ie7和遨游;其他(ie8 chrome ff safari opera等)
ie6认识的hacker 是下划线_ 和星号 *
ie7 遨游认识的hacker是星号 *
比如这样一个css设置 height:300px;*height:200px;_height:100px;
ie6浏览器在读到 height:300px的时候会认为高时300px;继续往下读,他也认识*heihgt, 所以当ie6读到*height:200px的时候会覆盖掉前一条的相冲突设置,认为高度是200px。继续往下读,ie6还认识_height,所以他又会覆盖掉200px高的设置,把高度设置为100px;
ie7和遨游也是一样的从高度300px的设置往下读。当它们读到*height200px的时候就停下了,因为它们不认识_height。所以它们会把高度解析为200px;
剩下的浏览器只认识第一个height:300px;所以他们会把高度解析为300px。
因为优先级相同且想冲突的属性设置后一个会覆盖掉前一个,所以书写的次序是很重要的。

原创粉丝点击