第一:图片间隙
a:div中的图片间隙;
描述:在div中插入图片时,图片会将div下方撑大3像素
hack1:将<div>和<img>写在一行
hack2:将<img>转为块元素,给<img>添加声明:display:block;
hack3:给<div>设置:overflow:hidden
b:dt,li中图片间隙
hack:同a中的hack2,hack3方法
第二:默认高度
描述:在IE6及以下版本中,部分块元素具有默认高度(低于18px高度)
hack1:给元素添加声明:font-size:0;
hack2:给元素添加声明:overflow:hidden;
第三:双倍浮动(双倍边距)
描述:当IE6及更低版本浏览器在解析浮动元素时,会错误的把浮向边边界加倍显示
hack:给浮动元素添加声明:display:inline;
第四:表单元素行高不一致(几乎没个浏览器都有)
描述:表单元素行高对齐方式不一致
hack:给表单元素添加声明:float:left;
第五:按钮元素默认大小不一
描述:个浏览器中按钮元素大小不一致
hack1:统一大小(用其他标签模拟按钮)
hack2:input外边套一个标签,在这个标签上边写按钮的样式,把input标签的边框和背景样式去掉
hack3:将按钮样式的图片直接设置为背景图片
第六:百分比Bug
描述:IE浏览器在解析百分比时,会按四舍五入的方式计算从而导致50%+50%>100%的情况
hack:给右面的浮动元素添加声明:clear:right;或者clear:left;或者clear:both;
第七:鼠标指针Bug
描述:cursor属性的hand属性值只在IE6及以下版本浏览器识别,其他浏览器不识别该声明,cursor的pointer属性值IE6以上版本及其他浏览器都识别
hack:统一鼠标手型形状应将cursor:hand;加上,默认的为cursor:pointer;
第八:透明属性
hack:IE浏览器(8以下):filter:alpha(opacity=value);(取值范围1到100),其他浏览器写法:opacity:value;(value的取值范围0.1到1)
第九:过滤器
1:下划线过滤器
描述:在一个属性前加了下划线后,在IE6及以下版本能识别这个规则,别的浏览器则不识别而忽略这个属性
2:important关键字过滤器
描述:表示所附加的声明具有最高优先级的意思,IE6及以下版本不识别