css各兼容应该注意的问题

1.div布局在ie浏览器和chrome浏览器,firefox浏览器不同,不如在div里面嵌套3个div,分别左中右,左边div的pading和margin在ie8以上都是几乎相同,ie8以下做内边距x2,在中间的div在chrome和fierfox中默认在左边div的右边,而ie缺不是,解决这个问题设置一下左浮动就可以解决。

2.一个ul便签,如果设置左浮动,比如li>5,便签如果设置为水平显示,li由左往右,如果设置右浮动,就是从右往左。比如一个导航栏,

首页 购买记录 关于   這是左浮动

关于 购买记录 首页   這是右浮动

3.比如一个便签<p>全面一行都会空两个空格,空格可以用&nbps;但是每个浏浏览器的空格距离不相同,ie浏览器距离比较大,所有调兼容性最好不要用&nbps;有缩进,用css控制缩进,text-indent:2em;空两个字体的空间,很灵活,无论字体多大都是两个字体的距离,只是在首行空两个字体距离。

4.一般两个模块,左右的外边距会合并,而上下的外边距会取其中的最大值。就如左边模块的margin-right=10px,右边模块的margin-left=10px,他们之间的距离就为20px;如果上模块的margin-bottom=10px,下模块的margin-top=20px,则两个模块的距离为20px,取最大那个。(内边距不能为负值,外边距可以为负值)一般都把所有便签的内外边距清空,因为每个浏览器的默认值的不同。做兼容性更家容易。一般在css文件中定义 *{padding=0px;margin=0px;}

5.块级元素比如<p></p>默认宽度为100%,所以要用选择器来改变默认值。水平居中一半不用align=“center”,新浏览器都抛弃,一半用css控制 margin=任意px,auto;就水平居中了。

6.Ie6不支持display:inline-block,一般不用。

7.父级div管不着有浮动的子div,溢出,为了解决这个问题,一般在父级div加上,overflow:hidden;

8.因为scr是行内块级元素,所以不能用margin:0px,auto(只能用于块级元素);居中,若要使他居中,转化成块级元素 diaplay:block;

9.相对定位和绝对定位

有定位属性默认层级都为0. z-index,如果都没有定义层级,后来者居上。

相对定位一般是模块当前位置。

绝对定位是相对于最近有定位父级的模块进行定位。

(z-index可以实现 许愿墙 )

(z-index=-1,那么里面的东西点不了,)

10.display:none;隐藏,位置不存在

Visibility:hidden;隐藏,位置还存在

11.css2设置透明度,w3c用opacity:0-1;

Ie用filter:alpha(opacity=0-100);

一般做兼容两个一起写

12.li {list-style-type:none;}取消li下的小圆点。一般用来做导航。·

13.有时候在ie浏览器加入背景图没效果,但是火狐和谷歌就可以正常显示,试试把png转化成jpg试试。

14.总结用css3的特性只能在ie9以上的浏览器使用,如果要求ie9以下的浏览器,请放弃css3,不然你调兼容的时间比你写代码的时间还要多,一般国外都已经放弃用ie9以下的浏览器,但是中国还用一些林婉不顾的老顽童用xp,淘宝都准备抛弃ie8以下的浏览器。给开发者建议,做一个网页需要负责任,有些官方的网页只能用ie打开,那效果不堪一看,连刚刚写前段网页的都能写出来,代码就像不是程序员写的,我看过广州市某个官方图书馆的官网,看完我感觉没爱了。其实兼容是靠经验的。多用火狐调试器看看自己的布局,花点时间,就能调出,一半ie下默认的值,你只要重置一下就ok,还有div的位置不相同,设置一下float就行,float不行就用定位,慢慢琢磨,以后开发遇到问题就能及时发觉,以上的都是我记得的兼容方法,有好多没有写出来。但我遇到问题我懂怎样解决,百度不是万能,希望自己能解决问题。一般代码不用百度,用google,最好能看懂英文,stack overflow

和github都有很多解决方法,英文不行可以下载个翻译器,真心有用的,

时间: 2024-10-10 19:00:36

css各兼容应该注意的问题的相关文章

css样式兼容不同浏览器问题解决办法

在网站设计的时候,应该注意css样式兼容不同浏览器问题,特别是对完全使用DIV CSS设计的网站,就应该更注意IE6 IE7 FF对CSS样式的兼容,不然,你的网乱可能出去不想出现的效果! 所有浏览器 通用 height: 100px; IE6 专用 _height: 100px; IE6 专用 *height: 100px; IE7 专用 *+height: 100px; IE7.FF 共用 height: 100px !important; 一.CSS HACK 1, !important

CSS中兼容的一面-----Hack

国庆了,出去玩耍,也有好长时间没有更新博客了.. 今天就和大家共享一篇技术博文吧.. CSS中兼容的一面-----Hack技术大全 兼容范围: IE:6.0+,FireFox:2.0+,Opera 10.0+,Sarari 3.0+,Chrome 参考资料: 各游览器常用兼容标记一览表: 标记 IE6 IE7 IE8 FF Opera Sarari [*+><] √ √ X X X X _ √ X X X X X \9 √ √ √ X X X \0 X X √ X √ X @media scr

CSS浏览器兼容

CSS 浏览器兼容知识汇总 CSS技巧 1.div的垂直居中问题 vertical-align:middle; 将行距增加到和整个DIV一样高line-height:200px; 然后插入文字,就垂直居中了.缺点是要控制内容不要换行. 2.margin加倍的问题 问题描述:设置为float的div在ie下设置的margin会加倍.这是一个ie6都存在的bug. 解决方案:在这个div里面加上display:inline; 示例讲解:<div id="imfloat"><

常见css的兼容问题

1.链接的虚线框问题 <!-- html --><a class="noDashedBox" href="#"><img src="http://j5.dfcfw.com/image/201406/20140603152217.png" /></a> /* * a, img, input等标签点击时会带有虚线框 * 去除它 */ .noDashedBox { outline:0; blr:expre

css的兼容问题

浏览器与css的兼容问题一直是一个很头疼的问题 [允悲]  ..... 在网页完成后做测试的时候,一般都会出现很多的兼容问题,这是每一个开发者都面临的问题. 下面我们介绍一下 常见的兼容问题. (1)图片默认有间距;  解决 :对img进行float (2)不同浏览器的margin 和 padding 差异较大 (3)CSS控制器透明度问题:一般就直接opacity:0.6: IE   filter:alpha(opacity=60) (4)IE6双边距bug:块属性添加浮动float之后,若在

ie6,ie7,ie8 css bug兼容解决记录

ie6,ie7,ie8 css bug兼容解决记录 转载自:ie6,ie7,ie8 css bug兼容解决记录 - 前端开发 断断续续的在开发过程中收集了好多的bug以及其解决的办法,都在这个文章里面记录下来了!希望以后解决类似问题的时候能够快速解决 ,也希望大家能在留言里面跟进自己发现的ie6 7 8bug和解决办法! 1:li边距“无故”增加 任何事情都是有原因的,li边距也不例外. 先描述一下具体状况:有些时候li边距会突然增 加很多,值也不固定(只在IE6/IE7有这种现象),让人摸不着

[转]CSS完美兼容IE6/IE7/IE8/IE9/IE10的通用方法

CSS完美兼容IE6/IE7/IE8/IE9/IE10的通用方法 2013-12-12  By 奥夫 关于CSS对各个浏览器兼容已经是老生常谈的问题了, 网络上的教程遍地都是.以下内容没有太多新颖, 纯属个人总结, 希望能对初学者有一定的帮助. 一.CSS HACK 以下两种方法几乎能解决现今所有HACK. 1, !important 随着IE7对!important的支持, !important 方法现在只针对… 一.CSS HACK 以下两种方法几乎能解决现今所有HACK. 1, !impo

IE6/IE7/IE8/Firefox/Chrome/Safari的CSS hack兼容一览表

浏览器兼容问题一直是前段开发工程师比较头痛的问题,熟悉了里面的规则也就变得简单了,这里有一份资料可以分享给大家,大家平时开发过程中遵循这个规律的话,会变得轻松多了: 各浏览器CSS hack兼容表:   IE6 IE7 IE8 Firefox Chrome Safari !important   Y   Y     _ Y           * Y Y         *+   Y         \9 Y Y Y       \0     Y       nth-of-type(1)    

(转)Css样式兼容IE6,IE7,FIREFOX的写法

根据FF和IE对一些符号识别的差异,我们可以单独对FF以及IE定义样式,例子: 区别IE6与FF:          background:orange;*background:blue;   区别IE6与IE7:          background:green !important;background:blue;   区别IE7与FF:          background:orange; *background:green;   区别FF,IE7,IE6:          back

【引用】CSS浏览器兼容手册

CSS技巧 1.div的垂直居中问题vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然后插入文字,就垂直居中了.缺点是要控制内容不要换行 2. margin加倍的问题    设置为float的div在ie下设置的margin会加倍.这是一个ie6都存在的bug.解决方案是在这个div里面加上display:inline;   例如:    <#div id=”imfloat”>    相应的css为   #IamFloat{