IE6 的兼容相关问题
因为在实习公司要求兼容IE6+,所以将IE6相关的样式兼容问题列出,及解决方案。
1.让页面变丑的透明背景图片问题:
HTML都为以下代码:
<div class="img-png"></div>
一般情况下使用png格式图片作为背景图片CSS部分:
.img-png{
width:64px;
height:64px;
background: url("imgsss/day.png") no-repeat;
}
效果图:
chrome下: IE6下:
IE6下是不是很丑,带一个灰色的底色。面对这种问题,解决方案是:针对IE6,使用 png8格式的图片来做背景图片,在IE6效果如下:
终于没那么丑了,但是最好分开写,只在IE6时使用png8,因为png8色彩度等很低,会影响图片质量。分开的写法如下:
.img-png{
width:64px;
height:64px;
background: url("imgsss/day.png") no-repeat;/*IE6自动跳过*/
_background:url("imgsss/day-png8.png");/*显示此样式*/
}
2.让带有透明度背景颜色消失的问题:
HTML部分同上一条;
一般写法的情况下的CSS部分:
body{background: blue;}
.img-png{
width:64px;
height:64px;
background-color: #000;
opacity: 0.5;
}
chrome下: IE6下:
是不是看完整个人都不好了,变成一块黑了,对于此现象解决方法是:(运行效果跟chrome相同啦~)
.img-png{
width:64px;
height:64px;
background-color: #000;
opacity: 0.5;
filter: alpha(opacity=70);/*增加此方法*/
}
3.IE6怪异解析将padding与border算入宽高:
看看你的HTML第一行是不是没有写文档申明!
因为没加入文档声明<!doctype html> ,所以造成非盒模型解析的原因,加入就好了。
4.当块元素左右浮动,设定margin时造成双倍边距:
使元素变成行内元素:display:inline
5.内部盒模型超出父级,父级被撑大:
在父级元素内使用overflow:hidden,隐藏超出内容
6.img作为块元素时,底边多出空白,并且带有蓝色的边框:
对于多出边框(3种方法):
a.让父级设置 overflow:hidden;
b.设置 img{display:block;}
c.设置 _margin:-5px;
对于图片带有蓝边的问题:
设置 img{border:none;}
7.li间有间距(3种方法):
a.设置float:left;
b.设置display:inline;
c.给li中文本末尾添加一个空格
8.块级元素中含有 文字和带有右浮动的元素,右浮动的行内元素自动换行:
HTML部分:
<h3>我是个标题<a href="" style="float:right">更多>></a></h3>
CSS部分:
body{background: yellow;width: 30%;margin: 0 auto;color: #444444;}
chrome下:
IE6下:
解决方案,将你想要右浮动的行内元素放在文字的前面,就变成跟chrome一样想要的效果了:
<h3><a href="" style="float:right">更多>></a>我是个标题</h3>
9.设置position属性时,left、top发生错位:
为想要作为参照的父级(position:relative;),设置宽高或者添加 *zoom:1;
10.子级中设有position属性,导致父级overflow失效:
为父级设置 position:relative;
11.圆角问题:
使用圆角图片定位到边框(不然就放弃在IE6的圆角效果,不影响功能)
12.IE6背景闪烁
将链接、按钮用CSS sprites作为背景,鼠标触碰会发生闪烁的情况,因为IE6没有将图片缓存,每次触碰都会重新加载,解决方法(2种):
a.不使用雪碧图
b.用JavaScript设置IE6缓存这些图片:
document.execCommand("BackgroundImageCache",false,true);
13.IE6调整窗口大小时,body居中,body里的相对定位元素固定不动:
给body设置 position:relative;即可
大部分解决方案都亲测有效 ,会随着遇到的更多问题来继续添加。
so 未完待续~
IE6 的兼容相关问题的更多相关文章
- ie6的兼容总结
ie6的兼容处理总结 1.透明背景图: .timer { _filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='my.png ...
- IE6浏览器兼容问题及部分解决方案(网上整理)
作为一个初涉前端技术的IT菜鸟,IE浏览器的兼容问题是一个不得不跨越的坎.为了能够在不同浏览器达到同样的显示效果,就不得不花心思想出办法实现兼容.由于各大主流浏览器内核不同,各自的实现标准有所差异,因 ...
- IE6不兼容问题
IE6不兼容问题 一.选择器兼容问题 1.交集选择器从IE7以上兼容(div.special): 2.儿子选择器(>):IE7开始兼容,IE6不兼容. 3.序选择器(first ...
- IE6部分兼容问题
border-style:dotted 点线 IE6不兼容 (除了solid以外,其它都有兼容问题,不完全一样) a IE6 不支持a以外的所有标签伪类,IE6以上版本支持所有标签的hover伪类. ...
- IE6支持兼容min-width、max-width CSS样式属性
IE6支持兼容min-width.max-width CSS样式属性 让IE6支持max-width.IE6支持min-width样式 我们在写CSS的时候,常常会遇到让一个图片或一个布局不能超出设定 ...
- min-height最小高度的实现(兼容IE6、IE7、FF)(解决IE6不兼容min-height)
<!doctype html><html> <head> <meta charset="UTF-8"> <meta name= ...
- ie6下兼容问题
最小高度问题:overflow:hidden 在ie6.7下 li本身不浮动 内容浮动 li产生3像素间隙 解决:vertical-align:top; 二.当ie6下最小高度问题和li间隙问题共存时 ...
- 不能用100%ie6不兼容
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- ie6的兼容问题及解决方案
1.png24位的图片在ie6浏览器上会出现背景,解决方案是做成png8位: 2.浏览器默认的margin和padding不同,解决方法是用全局重置来统一,即是*{margin:0;padding:0 ...
随机推荐
- java 反序列化PHP
由于本人所在开发的项目,前期是由php完成的,这里需要对数据库中php序列化的字符串进行反序列化. 1.引入maven依赖 <!--反序列化 php--> <dependency&g ...
- prototype继承(1)
如果替换了prototype对象, o.prototype = {};那么,下一步必然是为新的prototype对象加上constructor属性,并将这个属性指回原来的构造函数. o.prototy ...
- html中嵌入swf文件的几种方法
转自:http://blog.163.com/yuki_1154/blog/static/7120277120126109315935/ 找了很久终于找到一个比较全面的: 1. object + em ...
- url带#号,微信支付那些坑
现在前端很多框架的前端路由都带#号,主要为了做到无刷新跳转页面. 在微信公众号做微信支付时,配置的支付路径比如是http://www.eee.com/#/order,在调微信支付的方法时错误信息是'U ...
- linux的安装
在CentOS 7中提供了两种桌面"GNOME DESKTOP" 和 "KDE Plasa Workspaces",我们以安装"GNOME DESKT ...
- C++开始前篇,深入编译链接
C++开始,为什么要写这个东西,因为按照课堂进度的话,现在的C++已经学到模板以及重载了,有时却仍然因为一些小问题无法解答,原因是忘记了开始时学到的知识,深知不能像猴子掰棒子一样,掰一个扔一个,因此, ...
- SQL Server数据阻塞原因
阻塞形成原因 是由于SQL Server是高并发的,同一时间会有很多用户访问,为了保证数据一致性和数据安全,引入了锁的机制.同一时间只有拿到钥匙的用户能够访问,而其他用户需要等待. 死锁形成四大必要条 ...
- [转]序列化悍将Protobuf-Net,入门动手实录
最近在研究web api 2,看了一篇文章,讲解如何提升性能的, 在序列化速度的跑分中,Protobuf一骑绝尘,序列化速度快,性能强,体积小,所以打算了解下这个利器 1:安装篇 谷歌官方没有提供.n ...
- Android 笔记 AutoCompleteTextView day8
用于自动补全内容 适应器可用于显示多行内容 package com.supermario.autocompletedemo; import android.app.Activity; import a ...
- Xamarin 与VS2015RC(xamarin 3.11.450) 报空指针错误。
在Android开发中发现的一个“初步认为是调试器的bug”. 于早些时候发布在公司论坛上,传送门: http://www.newlifex.com/showtopic-1400.aspx 使用vs2 ...