1,元素浮动之后,能设置宽度的话就给元素加宽度。如果需要宽度是内容撑开,就给它里边的块元素加上浮动;

解决方案:给需要宽度由内容撑开的元素加上浮动

css样式:

<style>

.box{

width:400px;

border: 1px  solid black;

overflow:hidden;

}

.left{

float:left;

background:red;

}

.right{

float:right;

background: blue;

}

h2{

margin:0;

height:30px;

float:left;

}

</style>

html结构:

<div class="box">

<div class="left">

<h2>左边</h2>

</div>

<div class="right">

<h2>右边</h2>

</div>

</div>

2,第一块元素浮动,第二块元素加margin值等于第一块元素,在IE6下面有间隙问题;

解决方案:不建议这么写,用浮动解决

css样式:

<style>

.box{

width:500px;

}

.left{

width:200px;

height:200px;

float:left;

background:red;

}

.right{

width:200px;

height:200px;

background:blue;

margin-left:200px;

}

</style>

HTML结构:

<div class="box">

<div class="left"></div>

<div class="right"></div>

</div>

3,IE6 下子元素超出父级宽度,会把父级的宽高撑开

解决方案:子元素高度不要超过父级高度

css样式:

<style>

.box{

width:200px;

height:200px;

border: 1px soild red;

}

.item{

width:100px;

height:460px;

background-color:blue;

}

</style>

HTML结构:

<div class="box">

<div class="item"></div>

</div>

3,p标签包含块元素嵌套规则。

解决方案:p标签不要嵌套块元素

HTML结构:

<p>

<div>div</div>

</p>

4,margin 兼容性问题,父级包含的时候子级的margin-top会传递给父级,同级元素上下外边距会叠压;

解决方案:

问题1,触发haslayout, BFC.

问题2,尽量使用同一方向的margin,比如都设置top或者bottom;或者用padding代替。

css样式:

<style>

.box{

background-color:green;

}

.head{

height:30px;

background-color:red;

margin:50px;

}

.content{

height:30px;

background-color:blue;

margin:50px;

}

</style>

HTML结构:

<div class="box">

<div class="head">head</div>

<div class="content">content</div>

</div>

5,display:inline-block

解决方案:针对IE6,7使用hack添加display:inline和zoom:1

css样式:

<style>

div{

width:100px;

height:100px;

display:inline-block;

border:1px solid red;

font-size:12px;

*display:inline;

*zoom:1;

}

span{

width:100px;

height:100px;

border:1px solid red;

font-size:24px;

*display:inline;

*zoom:1;

*margin-right:-4px;

}

section{

font-size:0;

}

</style>

HTML结构:

<p>块元素转内联快</p>

<hr>

<section>

<div>快1</div>

<div>块2</div>

<div>块3</div>

</section>

<p>内联元素转内联块</p>

<hr>

<section>

<span>内联1</span>

<span>内联2</span>

<span>内联3</span>

</section>

希望能帮助大家!

关于IE低版本兼容问题的更多相关文章

  1. Material Designer的低版本兼容实现(五)—— ActivityOptionsCompat

    extends:http://www.cnblogs.com/tianzhijiexian/p/4087917.html 本文是对API中的方法做了介绍,如果想要看如何让这些方法兼容4.x或2.x可以 ...

  2. Material Designer的低版本兼容实现(一)—— 简介 & 目录

    很长一段时间没写东西了,其实是因为最近在研究Material Designer这个东西,熬夜熬的身体也不是很好了.所以就偷懒没写东西,这回开的这个系列文章是讲如何将Material Designer在 ...

  3. fetch ios低版本兼容cannot clone a disturbed response

    报错信息 ios 11以下 cannot clone a disturbed response github.com/github/fetc- 问题发生场景 使用了一个或者多个三方库 三方库或者自己的 ...

  4. IE低版本兼容的感悟

    2017-04-09 曾经折磨一代人的兼容问题,如今也在同样折磨着我们,明明可以做JS判断来避免对ie低版本的兼容,但是却还是耐心的做着兼容,你可能会问这是为什么, 我们调的不是兼容,是整整一代人的情 ...

  5. Material Designer的低版本兼容实现(二)—— Theme

    Theme material主题可以定义为如下形式: @android:style/Theme.Material @android:style/Theme.Material.Light @androi ...

  6. javascript原生bind方法ie低版本兼容详解

    上一篇文章讲到了javascript原生的bind方法: http://www.cnblogs.com/liulangmao/p/3451669.html 这篇文章就在理解了原生bind方法的原理以后 ...

  7. Material Designer的低版本兼容实现(十)—— CheckBox & RadioButton

    ChekBox的用途我们就不必多说了,算是一个很古老的控件了,何其类似的还有RadioButton,这个东西因为我目前还没写出来,所以用了别人的一个lib,这下面会说到.顺便说一句,如果你的app是在 ...

  8. Material Designer的低版本兼容实现(十二)—— Slider or SeekBar

    Slider,我更喜欢叫他SeekBar,其实是一个东西啦,就是拖动条.5.0的拖动条和4.x上的HOLO风格完全不同,平添了一些精致.此外还加入了数值指示器,让用户在滑动的时候就能知道现在到了什么位 ...

  9. 低版本兼容使用Fragment (转)

    Fragment框架开发东西确实很方便,但是恼人的是从4.0才开始支持.以前的版本必须用兼容模式开发,本人在网上找了大量资料,终于找到些线索正常运行于2.1版本的安卓系统.现在浅说一下兼容版本使用Fr ...

  10. Material Designer的低版本兼容实现(十四)—— CardView

    今天说的又是一个5.0中才有的新控件——CardView(卡片视图).这个东东其实我们早就见过了,无论是微博还是人人客户端,它都有出现.通常我们都是通过自定义一个背景图片,然后通过给layout进行设 ...

随机推荐

  1. adb server无法启动方法,结束占用端口的进程

    adb server is out of date.  killing...ADB server didn't ACK* failed to start daemon *error: unknown ...

  2. 设计模式之单一职责原则(SRP)

    自己之前写过一些关于设计模式的博客,但是大部分都写得比较匆忙.现在正好趁年前有时间,笔者打算好好地整理一下自己这块知识结构.开篇的第一个原则就是设计原则里面最简单的一个原则--单一职责原则. 想必大家 ...

  3. Python用类实现串以及对串的方法进行单元测试

    串是一种常见的数据结构,这里使用Python定义类来实现相应的方法.先看代码,再对相关知识进行讲解. # coding=utf-8 __all__=['ADTString'] class ADTStr ...

  4. ADO.NET 扩展属性、配置文件 和 对战游戏

    扩展属性 有外键关系时将信息处理成用户可看懂的 利用扩展属性 如:Info表中的民族列显示的是民族代号处理成Nation表中的民族名称 需要在Info类里面扩展一个显示nation名称的属性 例:先前 ...

  5. js精要之模块模式

    // 模块模式是一种用于创建拥有私有数据的单件对象的模式,基本做法是使用立调函数(IIFE)来返回一个对象 var yourObjet = (function(){ // 私有数据 return { ...

  6. 【.Net Framework 体积大?】不安装.net framework 也能运行!?开篇叙述-1

    [声明:请尊重作者micro-chen的原创,抓文章,请添加来源和作者署名.作者保留追责权利.......] 写在前言 看着日渐没落的.net ,心里多少有了点悲凉.国内的越来越多的新兴公司 都是JA ...

  7. 用keychain这个特点来保存设备唯一标识。

    由于IOS系统存储的数据都是在sandBox里面,一旦删除App,sandBox也不复存在.好在有一个例外,那就是keychain(钥匙串). 通常情况下,IOS系统用NSUserDefaults存储 ...

  8. 关系型数据库MySql-模糊搜索优化(like %abc%):全文搜索引擎技术选型

    1.阿里云OpenSearch 阿里云开放搜索OpenSearch是一款阿里巴巴自主研发的大规模分布式搜索引擎平台,该平台承载了淘宝.天猫.1688.神马搜索.口碑.菜鸟等搜索业务,通过OpenSea ...

  9. 基于 GCDAsyncSocket,简单实现类似《你猜我画》的 socket 数据传输

    一.前言 Socket Socket 是对 TCP/IP 协议的封装,其中IP协议对应为网络层,TCP 协议对应为传输层,而我们常用的HTTP协议,是位于应用层,在七层模型中HTTP协议是基于 TCP ...

  10. linux文本处理常用指令总结

    引子 作为一个偏爱windows的程序员,以前做文本处理的时候总是喜欢在windows下用notepad++等图形化工具处理,比如有时需要把linux服务器上一个文件进行一次全局字符串替换这样简单的操 ...