欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

深大云网络在H5开发中解决IE浏览器的兼容问题

程序员文章站 2022-05-21 11:59:29
深大云网络在h5开发中解决ie的兼容问题。浏览器兼容问题可以认为是相同的代码(css,js)在不同的浏览器中执行会产生不同的效果。 中国常见的3大内核: ie内核:ie浏览器、...

深大云网络在h5开发中解决ie的兼容问题。浏览器兼容问题可以认为是相同的代码(css,js)在不同的浏览器中执行会产生不同的效果。

中国常见的3大内核:

ie内核:ie浏览器、360浏览器(兼容模式)

chrome内核:chrome、360浏览器(极速模式)、搜狗浏览器、腾讯tt浏览器、百度浏览器、傲游浏览器

火狐内核:firefox浏览器

深大云网络在H5开发中解决IE浏览器的兼容问题

_color 比如_color中只会用ie6浏览器执行这句代码。

1)ie6对于微型盒子(高度小于等于18px的盒子)显示是有问题的,它总会维持高度18px;解决办法就是设置font-size:0;

原因:

ie6的渲染机制是以文字为本,总是试图让盒子的高度至少有内部文字的大小。我们声明内容文字大小为0,就好了。

深大云网络在H5开发中解决IE浏览器的兼容问题

深大云网络在H5开发中解决IE浏览器的兼容问题

 

_font-size:0;

列子:

深大云网络在H5开发中解决IE浏览器的兼容问题

2)盒子的半透明

opacity。值为1的时候,表示完全不透明;0表示盒子不可见,完全透明。但是在ie6中也有兼容性。

使用:_filter:alpha(opacity=72);解决兼容问题

3)overflow:hidden来清除浮动,对ie6有兼容性问题。

解决方法:zoom是ie浏览器中的一个属性(不是w3c的属性),用于控制显示倍数。这个属性用于控制页面中的任何元素显示倍数的。

但是在这里我们借助zoom这个属性,设置1,盒子不会放大也不会缩小,但是会触发一个haslayout机制(有兴趣的同学可以百度)。

在有haslayout机制的情况下,ie浏览器可以用overflow:hidden,_zoom:1来清除浮动的影响。

4)双倍margin问题

当一个浮动的盒子中,有连续的浮动的子盒子,(看marigin的方向,margin为左就是第1项,margin为右是最后项)的margin将会双倍。


1*{
2 padding: 0;
3 margin: 0;
4 }
5 ul{
6 float: left;
7 border:1px solid red;
8 list-style: none;
9 }
10 ul li {
11 float: left;
12 background:blue;
13 margin-left: 50px;
14 }
15 </style>
16 </head>
17 <body>
18 <ul>
19 <li>项目文字</li>
20 <li>项目文字</li>
21 <li>项目文字</li>
22 <li>项目文字</li>
23 <li>项目文字</li>
24 <li>项目文字</li>
25 </ul>
26 </body>
</html>

解决方法:
1. 给第一个(或者最后一个)元素,单独的class,设置为一半的margin即可。
2. 给浮动的父盒子添加 zoom:1,触发haslayout机制。
给浮动的子元素加上inline即可 _display:inline;

深大云网络在H5开发中解决IE浏览器的兼容问题

5)图片的边框

ie6、7中,所有有链接的图片,都默认有难看的边框:

<a href=”#”><img src=”” /></a>

深大云网络在H5开发中解决IE浏览器的兼容问题

解决方法:

img{

border: none;

}

6)ie6在不加<!doctype >文档声明头的时候,会用自己的理解处理盒模型。由“外扩”变成“内减”。margin居中会失效。

解决办法:添加文档声明头<!doctype >

正常情况

不加文档声明头<!doctype >

深大云网络在H5开发中解决IE浏览器的兼容问题

深大云网络在H5开发中解决IE浏览器的兼容问题