关于IE低版本兼容问题
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低版本兼容问题的更多相关文章
- Material Designer的低版本兼容实现(五)—— ActivityOptionsCompat
extends:http://www.cnblogs.com/tianzhijiexian/p/4087917.html 本文是对API中的方法做了介绍,如果想要看如何让这些方法兼容4.x或2.x可以 ...
- Material Designer的低版本兼容实现(一)—— 简介 & 目录
很长一段时间没写东西了,其实是因为最近在研究Material Designer这个东西,熬夜熬的身体也不是很好了.所以就偷懒没写东西,这回开的这个系列文章是讲如何将Material Designer在 ...
- fetch ios低版本兼容cannot clone a disturbed response
报错信息 ios 11以下 cannot clone a disturbed response github.com/github/fetc- 问题发生场景 使用了一个或者多个三方库 三方库或者自己的 ...
- IE低版本兼容的感悟
2017-04-09 曾经折磨一代人的兼容问题,如今也在同样折磨着我们,明明可以做JS判断来避免对ie低版本的兼容,但是却还是耐心的做着兼容,你可能会问这是为什么, 我们调的不是兼容,是整整一代人的情 ...
- Material Designer的低版本兼容实现(二)—— Theme
Theme material主题可以定义为如下形式: @android:style/Theme.Material @android:style/Theme.Material.Light @androi ...
- javascript原生bind方法ie低版本兼容详解
上一篇文章讲到了javascript原生的bind方法: http://www.cnblogs.com/liulangmao/p/3451669.html 这篇文章就在理解了原生bind方法的原理以后 ...
- Material Designer的低版本兼容实现(十)—— CheckBox & RadioButton
ChekBox的用途我们就不必多说了,算是一个很古老的控件了,何其类似的还有RadioButton,这个东西因为我目前还没写出来,所以用了别人的一个lib,这下面会说到.顺便说一句,如果你的app是在 ...
- Material Designer的低版本兼容实现(十二)—— Slider or SeekBar
Slider,我更喜欢叫他SeekBar,其实是一个东西啦,就是拖动条.5.0的拖动条和4.x上的HOLO风格完全不同,平添了一些精致.此外还加入了数值指示器,让用户在滑动的时候就能知道现在到了什么位 ...
- 低版本兼容使用Fragment (转)
Fragment框架开发东西确实很方便,但是恼人的是从4.0才开始支持.以前的版本必须用兼容模式开发,本人在网上找了大量资料,终于找到些线索正常运行于2.1版本的安卓系统.现在浅说一下兼容版本使用Fr ...
- Material Designer的低版本兼容实现(十四)—— CardView
今天说的又是一个5.0中才有的新控件——CardView(卡片视图).这个东东其实我们早就见过了,无论是微博还是人人客户端,它都有出现.通常我们都是通过自定义一个背景图片,然后通过给layout进行设 ...
随机推荐
- linux学习笔记----权限与命令之间的关系(极重要)
一.权限与命令之间的关系 二.文件与目录的默认权限与隐藏权限 1)umask为默认的权限(通过umask -S)查看你的系统的默认权限. umask的分数是指该默认值需要减掉的权限,比如说umask= ...
- 分析器错误消息: 无法识别的属性“targetFramework”。
配置错误 说明: 在处理向该请求提供服务所需的配置文件时出错.请检查下面的特定错误详细信息并适当地修改配置文件. 分析器错误消息: 无法识别的属性“targetFramework”.请注意属性名称区分 ...
- 如何在windows xp下实现声音内录
问题描述: 用屏幕录制软件录制一个视频,能够成功录制视频,但无法录制视频里面的声音. 问题原因: 因为现在的多数声卡,均无法直接通过声卡自身的功能实现内录和立体声混音. 这是由于声卡芯片厂商迫于RIA ...
- 为什么python适合写爬虫?(python到底有啥好的?!)
我用c#,java都写过爬虫.区别不大,原理就是利用好正则表达式.只不过是平台问题.后来了解到很多爬虫都是用python写的.因为目前对python并不熟,所以也不知道这是为什么.百度了下结果: 1) ...
- MEAN教程1-MongoDB安装和使用
MEAN是MongoDB.Express.AngularJS和Node.js的缩写.其理念是仅使用JavaScript一种语言来驱动整个应用.其最鲜明的特点有以下几个:1整个应用只使用一种语言:2整个 ...
- ES2:ElasticSearch 集群配置
ElasticSearch共有两个配置文件,都位于config目录下,分别是elasticsearch.yml和logging.yml,其中,elasticsearch.yml 用来配置Elastic ...
- quartz配置时间
我们需要把log4j的配置文件放入src目录下,启动main类就可以了. Cron Expressions cron的表达式被用来配置CronTrigger实例. cron的表达式是字符串,实际上是由 ...
- 代码神器Atom,最常用的几大插件,你值得拥有。
作者:魔洁 atom常用插件 atom插件安装File>Settings>intall搜索框输入插件名,点击Packages搜索,搜索出来后点击intall安装,建议你先安装(simpli ...
- AFNetworking2.0和AFNetworking3.0 的HTTPS的配置
前言: 由于苹果声明在前说是2017.01.01之后提交审核的APP,必须使用HTTPS请求,要不就直接驳回审核,吓得我们年前赶紧提交了一个版本,想着年后在弄这个https,结果又有消息说是苹果推迟了 ...
- PLSQL触发器
触发器权限 数据库创建用户时想要在本用户下使用触发器,需要给用户触发器的权限 使用DBA用户执行 GRANT CREATE TRIGGER TO user_name; 如果想在当前用户下创建其他用户 ...