1 ie6.0横向margin加倍css
产生因素:块属性、float、有横向margin。
解决方法:display:inline;
2 ie6.0下默认有行高html
解决方法:overflow:hidden;或font-size:0;或line-height:xx px;
3 在各个浏览器下img有空隙(缘由是:回车。)android
解决方法:让图片浮动。
4 一个父标签与几个子标签嵌套,父标签不浮动,子标签float,子标签不撑开父的高度。ios
解决方法:a 在子标签最后清浮动{<div style="height:0;clear:both;"> </div>}
b 父标签添加{overflow:hidden;}
c 给父标签设置高度
5 Ie6下,不识别最大宽、高度和最小宽高度,意即min-width/height和 Max-width/height在ie6中没效果,css3
解决方法:(1):.abc{border:1px blue solid;width:200px;height:200px;}
html>body .abc{width:auto;height:auto;min-width:200px;min-height:200px;}
(2):.abc{width:200px;height:200px;_width:200px;_height:200px;}(由于ie6有一个特征,当定义一个高度时,若是内容超太高度,元素会自动调整高度。)
6 Ie6里面:如li设宽、高,而且li里面的标签浮动,那么li之间会有间距web
解决方法:li不设宽、高或者li内的标签不浮动
7 li之间有间距chrome
解决方法:li 设置vertical-align:middle;
8 3像素问题:ie6下,当浮动元素与流动元素并列显示时,他们之间会存在三像素问题。express
解决方法:用hack技术, 例如:全部浏览器通用 height:100px;
ie6专用_height:100px;
ie7专用*+height:100px;
ie6/ie7共用*height:100px;
9 当定义行内元素为包含框时,且包含框包含的绝对定位元素以百分比为单位进行定位时,会出现混乱。浏览器
解决方法:在行内元素里加入{zoom:1;}
10 当多个浮动元素中间夹杂着HTML注释语句时,若是浮动元素宽度为100%,则在下一行多显示一个上一行最后一个字符。微信
解决办法:给浮动元素添加display:inline;。
11 opacity 定义元素的不透明度
filter:alpha(opacity=80);/*ie支持该属性*/
opacity:0.8;/*支持css3的浏览器*/
12 两个块元素,竖向的margin值不增长,会重叠,其间距为最大margin值。
13 优先级:被!important 注明的css属性具备最高优先级(.abc{color:red !important;})。但在ie6中!important具备一个bug:在同一组css属性中,!important不起做用。
14 火狐不识别background-position-y 或background-position-x;
---------------------------2014.01.10补充-------------------------------
15 ie6 不支持 fixed
复制代码
/*对于非IE6能够这样写*/
#top{
position:fixed;
bottom:0;
right:20px;
}
/*可是IE6是不支持fixed定位的,须要另外重写*/
#top{
position:fixed;
_position:absolute;
top:0;
right:20px;
_bottom:auto;
_top:expression(eval(document.documentElement.scrollTop));
}
/*使用hack使IE6实现该效果,但这个东东会闪烁,须要如下代码*/
*html{
background-image:url(about:blank);
background-attachment:fixed;
}
/*使固定在顶部*/
#top{
_position:absolute;
_bottom:auto;
_top:expression(eval(document.documentElement.scrollTop));
}
/*固定在底部*/
#top{
_position:absolute;
_bottom:auto;
_top:expression(eval(document.documentElement.scrollTop+document.documentElement.clientHeight-this.offsetHeight-(parseInt(this.currentStyle.marginTop)||0)-(parseInt(this.currentStyle.marginBottom)||0)));
}
/*垂直居中*/
#top{
position:fixed;
top:50%;
margin-top:-50px;
_position:absolute;
_top:expression(eval(document.documentElement.scrollTop+document.documentElement.clientHeight/2));
}
复制代码
16 解决 ie6 最大、最小宽高 hack方法
复制代码
/* 最小宽度 */
.min_width{
min-width:300px;
_width:expression(parseInt(this.clientWidth) < 300 ? "300px" : this.clientWidth);
}
/* 最大宽度 */
.max_width{
max-width:600px;
_width:expression(parseInt(this.clientWidth) > 600 ? "600px" : this.clientWidth);
}
/* 最小高度 */
.min_height{
min-height:200px;
_height:expression(parseInt(this.clientHeight) < 200 ? "200px" : this.clientHeight);
}
/* 最大高度 */
.max_height{
max-height:400px;
_height:expression(parseInt(this.clientHeight) > 400 ? "400px" : this.clientHeight);
}
复制代码
17 z-index不起做用的 bug
1)ie6下 首先讲讲第一种z-index不管设置多高都不起做用状况。这种状况发生的条件有三个:一、父标签position属性为relative;二、问题标签含有浮动(float)属性。
2)全部浏览器:它只认第一个爸爸
层级的高低不只要看本身,还要看本身的老爸这个后台是否够硬。用术语具体描述为:
父标签position属性为relative或absolute时,子标签的absolute属性是相对于父标签而言的。而在IE6下,层级的表现有时候不是看子标签的z-index多高,而要看它们的父标签的z-index谁高谁低。
18 ie各个版本hack
复制代码
/*类内部hack:*/
.header {_width:100px;} /* IE6专用*/
.header {*+width:100px;} /* IE7专用*/
.header {*width:100px;} /* IE六、IE7共用*/
.header {width:100px\0;} /* IE八、IE9共用*/
.header {width:100px\9;} /* IE六、IE七、IE八、IE9共用*/
.header {width:330px\9\0;} /* IE9专用*/
/*选择器Hack:*/
*html .header{} /*IE6*/
*+html .header{} /*IE7*/
复制代码
------------------------------------------------------------------------
输入框 一个很基础的控件 结果出现了兼容性问题
在chrome ie android上页面正常 结果在Safari和IOS系统里面输入框没法输入
点击后有获取焦点的边框高亮效果可是不能输入 查询资料解决 查询解决问题以下
这个是一个提交的页面可是老是没法输入进去文字 在uc中是能够的 可是在微信中
或者ios自带浏览器是没法输入的 绞尽脑汁 找了半天 才发现本身多加了一段代码
(这个代码是模版中自带的 我靠)
/*-webkit-user-select: none;
把这行代码注视掉就能够了 至于这行代码做用是什么 解释以下
或许你经常不但愿用户在你的网站上选择文本,不管是不是出于版权的缘由.
一般你们会有js来实现,另外一个方案就是,将-webkit-user-select 和-moz-user-select
的值设为none.
请谨慎使用这个属性:由于大部分用户是来查看信息的,他们能够复制并存储下来以备未来之用
,因此这种方法既无用也无效.若是你禁用了复制粘贴功能,用户仍是能够经过查看源文件来获取
到他们想要的内容.搞不懂这个属性为何会被webkit和gecko支持.
--------------
大部分状况下,使用这个属性的目的是为了界面的美化,
由于手机端很容易由于用户长按屏幕出现文本选择框,
很丑,影响用户体验,因此在没有 复制黏贴这种需求的
页面里,通常会使用这个属性禁止用户选择。不过我却是
没发现这个属性会致使输入框不能输入
--------------
想不明白 不过-webkit-user-select: none这个确实会致使输入框不能输入 在Safari里面 只要有这个就不行 这个前缀不是chrome的内核吗 其余的同属性均可以 可是只要有-webkit前缀的这个属性就出问题了 不明白缘由 ------------------