IE6常见CSS解析Bug及hack-好程序员H5前端

 

    1.默认高度(IE6) 
    描述:在IE6及如下版本中,部分块元素拥有默认高度(在16px左右;) 
    hack1:给元素添加声明:font-size:0; 
    hack2:给元素添加声明:overflow:hidden;
    2.图片有边框BUG ,当图片加在IE上会出现边框Hack:给图片加border:0;或者border:none;
    3.图片间隙 ,div中的图片间隙BUG      描述:在div中插入图片时,图片会将div下方撑大大约三像素。      hack1:将与写在一行上; ie6      hack2:将转为块状元素,给添加声明:display:block;      hack3:给图片添加vertical-align:top/middle/bottom.     4. 双倍浮向(双倍边距)(只有IE6出现)      描述:当Ie6及更低版本浏览器在解析浮动元素时,会错误地把浮向边边界(margin)加倍显示。      hack:给浮动元素添加声明:display:inline;     5.表单元素行高对齐不一致      描述:表单元素行高对齐方式不一致      hack:给表单元素添加声明:float:left;     6.按钮元素默认大小不一      描述:各浏览器中按钮元素大小不一致      hack1: 统一大小/(用a标记模拟)       hack2:input外边套一个标签,在这个标签里写按钮的样式,把input的边框去掉。      hack3:若是这个按钮是一个图片,直接把图片做为按钮的背景图便可     7.百分比bug      描述:在IE7及如下版本中在解析百分比时,会按四舍五入方式计算从而致使50%加50%大于100%的状况。(也会受系统影响)      hack: 给右面的浮动元素添加声明:clear:right; 意思:清除右浮动。     8.鼠标指针bug      描述:cursor属性的hand属性值只有IE9如下浏览器识别,其它浏览器不识别该声明,cursor属性的pointer属性值IE6.0以上版本及其它内核浏览器都识别该声明。     hack: 如统一某元素鼠标指针形状为手型,应添加声明:cursor:pointer;     9.透明属性      兼容其余浏览器写法:opacity:value;(value的取值范围0-1;      例:opacity:0.5;)      IE浏览器写法:filter:alpha(opacity=value);取值范围 0-100(整数)     10.li列表的BUG      1):当父元素(li) 有float:left;子元素(a) 没设置浮动的状况下会出现垂直bug;      Hack:给父元素li和子元素a都设置浮动;      2):当给li中的a转成block;而且有height,并有float的时候,li中没设置浮动会出现阶梯显示,      hack:同时给li加float;     11.当li里a、span 分别添加左右浮动时,而且li设置高度后,IE7及如下浏览器会出现 li下方多出3像素左右的空隙;      hack:给li添加float:left;和width:100%;     12.当前元素(父元素里面第一个子元素)与父元素没有设置任何浮动的状况下,设置margin-top后,会错误的把margin-top加在父级元素上。 Css hack:      1.给父级元素添加overflow:hidden;(推荐使用)      2.给父元素或者子元素加浮动      3.当父元素有边框时,能够直接给子元素添加margin-top值;     13.margin BUG      当两个上下排列的元素,上元素有margin-bottom:30px;下面元素有margin-top:20px;他们中间的距离不会相加,而是会设置为较大的值;
相关文章
相关标签/搜索