ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:22.30KB ,
资源ID:9545216      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9545216.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(div+css兼容性解决方案.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

div+css兼容性解决方案.docx

1、div+css兼容性解决方案div+css兼容性问题全解1、div+css 如何使网站兼容不同字体使用utf-8内码进行编写(右键-编码-选择一种其它国家的编码-查看效果)asp代码如下: 使用方法: 2、关于div+css兼容IE和firefox的问题好不容易建立的div+css网页完全符合W3C标准。在ie7下显示非常完美,用firefox一测试,乖乖一探糊涂惨不忍睹。经过一番研究发现兼容很简单。1、增加 div overflow: hidden;,目的就是让div自动适应内容高度2、横排的div外套div另外 设定ul margin: 0px;padding: 0px;是消除li前面的空

2、格3、div+css兼容性问题 CSS 兼容要点:DOCTYPE 影响 CSS 处理FF: div 设置 margin-left, margin-right 为 auto 时已经居中, IE 不行FF: body 设置 text-align 时, div 需要设置 margin: auto(主要是 margin-left,margin-right) 方可居中FF: 设置 padding 后, div 会增加 height 和 width, 但 IE 不会, 故需要用 !important 多设一个 height 和 widthFF: 支持 !important, IE 则忽略, 可用 !imp

3、ortant 为 FF 特别设置样式div 的垂直居中问题: vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然后插入文字,就垂直居中了。缺点是要控制内容不要换行cursor: pointer 可以同时在 IE FF 中显示游标手指状, hand 仅 IE 可以FF: 链接加边框和背景色,需设置 display: block, 同时设置 float: left 保证不换行。参照 menubar, 给 a 和 menubar 设置高度是为了避免底边显示错位, 若不设 height, 可以在 menubar 中插入一个空格XHTM

4、L+CSS兼容性解决方案小集使用XHTML+CSS构架好处不少,但也确实存在一些问题,不论是因为使用不熟练还是思路不清晰,我就先把一些我遇到的问题写在下面。1.在mozilla firefox和IE中的BOX模型解释不一致导致相差2px解决方法:div css xhtml xml Example Source Code Example Source Code divmargin:30px!important;margin:28px;注意这两个margin的顺序一定不能写反,据阿捷的说法!important这个属性IE不能识别,但别的浏览器可以识别。所以在IE下其实解释成这样:div css x

5、html xml Example Source Code Example Source Code divmaring:30px;margin:28px重复定义的话按照最后一个来执行,所以不可以只写margin:XXpx!important;2.IE5 和IE6的BOX解释不一致IE5下divwidth:300px;margin:0 10px 0 10px;div的宽度会被解释为300px- 10px(右填充)-10px(左填充)最终div的宽度为280px,而在IE6和其他浏览器上宽度则 是以300px+10px(右填充)+10px (左填充)=320px来计算的。这时我们可以做如下修改:di

6、v css xhtml xml Example Source Code Example Source Code divwidth:300px!important;width /*/:340px;margin:0 10px 0 10px关于这个/*/是什么我也不太明白,只知道IE5和firefox都支持但IE6不支持,如果有人理解的话,请告诉我一声,谢了!:)3.ul标签在Mozilla中默认是有padding值的,而在IE中只有margin有值所以先定义div css xhtml xml Example Source Code Example Source Code ulmargin:0;pa

7、dding:0;就能解决大部分问题4.关于脚本,在xhtml1.1中不支持language属性,只需要把代码改为div css xhtml xml Example Source Code Example Source Code 4、div+css兼容问题解决方案(IE5/5.5/6/7/FF)之前找了几个不同版本的可独立运行的IE浏览器,正好拿来试试页面的兼容性问题。不试不知道,在IE6和FF中没问题的页面在IE5和IE5.5中乱成一团,一直听说IE5是WEB标准制作的一个“钉子户”,现在不得不相信了。既然有问题,那就找找解决的方法咯,在网上一搜,相关的文章还是不少的,觉得最直接的方法还是“I

8、E条件注释”,很方便的就能为IE的不同版本写样式。但这样就得为每个版本写一个样式,不利于文件的优化。找了一些相关的CSS HACK后,觉得应该可以把IE5/IE5.5/IE6/FF的HACK写到一起的,经过测试,终于找到了一个不错的方法,下面我们来看看怎么实现:大家都知道用!important声明可以提升指定样式规则的应用优先权,如下面的例子:E1background-color: red !important;/*提升优先权*/background-color: blue;但这样写在IE中会有个问题,看过我的关于CSS样式表优先级和关于CSS样式表优先级补遗,你会知道在IE6和FF中用! i

9、mportant声明可以提高优先级别,但在IE6中的!important声明并不是绝对的,它会被之后的同名属性定义所替换。也就是说在上面的例子中,IE6所应用的是最后一个背景色的值,即“blue”;而在FF中背景色的值为“red”。根据这一点,我们就可以把FF和IE的样式分离开。OK ,解决了FF和IE的问题,现在来解决IE自己的问题。看过了嘟嘟的绕过IE6支持IE5的别一种写法-IE也支持后有感而发,使用“”IE是否真的可以认得?我们来看个例子:E1background-color: red;background-color: blue;在FF中得到的是背景色红色,而在IE中得到的背景色是蓝

10、色,根据样式重定义的规则,如果浏览器可以识别“”,则应该得到的蓝色的背景,因此可以知道“”只有IE可以识别,这点是很重要的哦!在后面大家就会知道了。(注:我测试过其它的一些符号,如“”、“”、“”等,都只有IE可以识别,在此为了感谢嘟嘟,推荐使用“”)我们再来看个例子:E1/*IE only*/background-color: black;/*IE only*/background-color /*IE5.5*/: green;这个例子在IE6中得到了黑色的背景;而在IE5.5中得到的绿色的背景;在IE5中也得到了黑色的背景。这就说明了第二句定义只有IE5.5能识别,这是个很早就公布的HAC

11、K,可以在网上找到相关的资料,要注意的就是在属性名之后是有一个空格的。到此我们已经把FF、IE5.5、IE6分离出来了,那IE5呢?其实现在我们只要把IE5跟IE6分开就OK了,来看看例子:E1/*IE only*/background-color: red;/*IE5*/E1/*IE5.5+*/*IE only*/background-color: black;这里我们又用到一个HACK,就是“E1/*/”,这个定义在IE5以上的版本才能识别出来。这个例子得到的结果是,在IE5中的背景色为红色;在IE5以上版本中得到的是黑色背景。终于把不同版本的浏览器都分离出来了,这样我们就可以为不同的浏览

12、器定义不同的样式了。来看个完整的例子:E1width: 500px;height: 50px;background-color: red !important;/*FF*/background-color: blue;/*IE5*/text-align:center;E1/*IE5.5+*/*IE only*/background-color: black;/*IE6*/*IE only*/background-color /*IE5.5*/: green;需要注意的是,在上面例子中“background-color”定义的顺利不能改变,即FF-IE5-IE6-IE5.5。对于IE的定义在属性

13、前要加“”,因为“E1/*/”这个HACK在FF中可以识别。也许你会想,上面的例子不是可以写成:E1width: 500px;height: 50px;background-color: red;/*FF*/background-color: blue;/*IE5*/text-align:center;E1/*IE5.5+*/*IE only*/background-color: black;/*IE6*/*IE only*/background-color /*IE5.5*/: green;这样不就又可以省下几个字节?是没错,可是HACK不是标准,如果滥用HACK,那只会离标准越来越远!6、

14、div+css实现Firefox和IE6兼容的垂直居中Firefox中使用display: table-cell; vertical-align: middle;可以实现div垂直居中,而IE6中则需要借助IE6中css的特点实现垂直居中。为了实现Firefox和IE6兼容的垂直居中,还需要 借助于!important标记。Firefox支持!important标记,而IE6忽略!important标记,因此可以使用! important标记区别Firefox和IE6。示例代码 垂直居中,Firefox only垂直居中,Firefox only垂直居中,Firefox only垂直居中,IE

15、6 only垂直居中,IE6 only垂直居中,IE6 only垂直居中,Firefox IE6 only垂直居中,Firefox IE6 only垂直居中,Firefox IE6 only7、div+css的浏览器兼容问题水平居中,Firefox使用margin-left: auto; margin-right: auto; IE6 使用text-align: center;垂直居中,Firefox中使用display: table-cell; vertical-align: middle;可以实现div垂直居中,而IE6中则需要借助IE6中css的特点实现垂直居中。!important标记

16、,Firefox支持!important标记,IE6忽略!important标记DIV+CSS兼容 IE6 IE7 火狐在区别火狐和IE时最常用的是!important方法,对于其他不同浏览器和浏览器的不同版本的的兼容性问题还有下面一些方法,比如!important,注释,属性选择符,子对象选择符和voice-family等方法,这些方法在css网站布局实录中有讲述.下面是IE和火狐的css兼容性问题1.DOCTYPE 影响 CSS 处理2.FF: div 设置 margin-left, margin-right 为 auto 时已经居中, IE 不行3.FF: body 设置 text-al

17、ign 时, div 需要设置 margin: auto(主要是 margin-left,margin-right) 方可居中4.FF: 设置 padding 后, div 会增加 height 和 width, 但 IE 不会, 故需要用 !important 多设一个 height 和 width5.FF: 支持 !important, IE 则忽略, 可用 !important 为 FF 特别设置样式,值得注意的是,一定要将xxxx !important 这句放置在另一句之上6.div 的垂直居中问题: vertical-align:middle; 将行距增加到和整个DIV一样高 lin

18、e-height:200px; 然后插入文字,就垂直居中了。缺点是要控制内容不要换行7.cursor: pointer 可以同时在 IE FF 中显示游标手指状, hand 仅 IE 可以8.FF: 链接加边框和背景色,需设置 display: block, 同时设置 float: left 保证不换行。参照 menubar, 给 a 和 menubar 设置高度是为了避免底边显示错位, 若不设 height, 可以在 menubar 中插入一个空格。9.在mozilla firefox和IE中的BOX模型解释不一致导致相差2px解决方法:divmargin:30px!important;ma

19、rgin:28px;注意这两个margin的顺序一定不能写反,据阿捷的说法!important这个属性IE不能识别,但别的浏览器可以识别。所以在IE下其实解释成这样:divmaring:30px;margin:28px重复定义的话按照最后一个来执行,所以不可以只写margin:XXpx!important;10.IE5 和IE6的BOX解释不一致IE5下divwidth:300px;margin:0 10px 0 10px;div的宽度会被解释为300px-10px(右填充)-10px(左填充)最终div的宽度为280px,而在IE6和其他浏览器上宽度则是以 300px+10px(右填充)+1

20、0px(左填充)=320px来计算的。这时我们可以做如下修改divwidth:300px! important;width /*/:340px;margin:0 10px 0 10px关于这个/*/是什么我也不太明白,只知道IE5和firefox都支持但IE6不支持,如果有人理解的话,请告诉我一声,谢了!:)11.ul标签在Mozilla中默认是有padding值的,而在IE中只有margin有值所以先定义ulmargin:0;padding:0;就能解决大部分问题注意事项:1、float的div一定要闭合。例如:(其中floatA、floatB的属性已经设置为float:left;)这里的N

21、OTfloatC并不希望继续平移,而是希望往下排。这段代码在IE中毫无问题,问题出在FF。原因是NOTfloatC并非float标签,必须将float标签闭合。在之间加上这个div一定要注意声明位置,一定要放在最恰当的地方,而且必须与两个具有float属性的div同级,之间不能存在嵌套关系,否则会产生异常。并且将clear这种样式定义为为如下即可:.clearclear:both;此外,为了让高度能自动适应,要在wrapper里面加上overflow:hidden;当包含float的box的时候,高度自动适应在IE下无效,这时候应该触发IE的layout私有属性(万恶的IE啊!)用zoom:1

22、;可以做到,这样就达到了兼容。例如某一个wrapper如下定义:.colwrapperoverflow:hidden;zoom:1;margin:5px auto;2、margin加倍的问题。设置为float的div在ie下设置的margin会加倍。这是一个ie6都存在的bug。解决方案是在这个div里面加上display:inline;例如:相应的css为#IamFloatfloat:left;margin:5px;/*IE下理解为10px*/display:inline;/*IE下再理解为5px*/3、关于容器的包涵关系很多时候,尤其是容器内有平行布局,例如两、三个float的div时,宽

23、度很容易出现问题。在IE中,外层的宽度会被内层更宽的div挤破。一定要用Photoshop或者Firework量取像素级的精度。4、关于高度的问题如果是动态地添加内容,高度最好不要定义。浏览器可以自动伸缩,然而如果是静态的内容,高度最好定好。(似乎有时候不会自动往下撑开,不知道具体怎么回事)5、最狠的手段 - !important;如果实在没有办法解决一些细节问题,可以用这个方法.FF对于”!important”会自动优先解析,然而IE则会忽略.如下.tabd1background:url(/res/images/up/tab1.gif) no-repeat 0px 0px !importan

24、t; /*Style for FF*/background:url(/res/images/up/tab1.gif) no-repeat 1px 0px; /* Style for IE */值得注意的是,一定要将xxxx !important 这句放置在另一句之上,上面已经提过IE7.0出来了,对CSS的支持又有新问题。浏览器多了,网页兼容性更差了,疲于奔命的还是我们 ,为解决IE7.0的兼容问题,找来了下面这篇文章:现在我大部分都是用!important来hack,对于ie6和firefox测试可以正常显示,但是ie7对!important可以正确解 释,会导致页面没按要求显示!搜索了一下

25、,找到一个针对IE7不错的hack方式就是使用“*+html”,现在用IE7浏览一下,应该没有问题了。现在写一个CSS可以这样:#example color: #333; /* Moz */* html #example color: #666; /* IE6 */*+html #example color: #999; /* IE7 */那么在firefox下字体颜色显示为#333,IE6下字体颜色显示为#666,IE7下字体颜色显示为#999,他们都互不干扰。我真希望那个垃圾的IE6快点退休。DIV+CSS三行三列布局(兼容各种浏览器)DIV布局测试divheight:150px; div.leftwidth:20%;float:left;clear:right;background-color:#eeeeee;div.centerwidth:50%;float:left;clear:right;background-color:#CCCCCC;div.rightwidth:30%;float:left;clear:right;background-color:#808080;div.bothwidth:100%;clear:both; background-color:#696969; 左侧中侧右侧全行左侧中侧右侧

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1