浏览器兼容
- 格式:doc
- 大小:177.00 KB
- 文档页数:27
WEB前端开发必备之浏览器兼容性处理方法大全在Web前端开发中,浏览器兼容性是一个常见且重要的问题。
不同的浏览器对HTML、CSS和JavaScript的解析和渲染有一些差异,因此我们需要采取一些特定的处理方法来确保我们的代码在不同的浏览器上都能够正确地运行和显示。
1.使用浏览器兼容性前缀:许多CSS属性在不同的浏览器上有不同的前缀,例如"-webkit-"、"-moz-"和"-o-"等。
在使用这些属性时,需要添加适当的前缀以确保在各个浏览器上都能够正确地解析和渲染。
2. 使用CSS Reset:不同的浏览器对元素的默认样式有一些差异,使用CSS Reset可以将这些默认样式重置为统一的值,以便我们在不同的浏览器上呈现相同的效果。
3.引入浏览器兼容性CSS库:有许多流行的CSS库,如Normalize.css和Reset.css,可以自动处理不同浏览器之间的兼容性问题。
通过引入这些库,我们可以简化兼容性处理的工作量。
4. 使用CSS Hack:CSS Hack是一种使用特定的CSS语法来针对特定浏览器写入样式的方法。
例如,可以使用"\*html"来针对IE6编写特定的样式,或者使用"\_property: value"来针对IE7编写特定的样式。
然而,CSS Hack并不推荐使用,因为它会使代码复杂且难以维护。
5. 使用JavaScript兼容性库:有许多流行的JavaScript库,如jQuery和Modernizr,可以自动处理不同浏览器之间的兼容性问题。
这些库提供了一些常用的功能和方法,并通过检测浏览器的能力来提供相应的兼容性支持。
6. 使用Polyfill和Shim:Polyfill和Shim是一种使用JavaScript代码来实现一些浏览器不支持的功能的方法。
通过使用Polyfill和Shim,我们可以在不支持一些功能的浏览器上模拟这些功能,从而实现兼容性支持。
IE10以上浏览器兼容性问题
1.打开电脑自带的internet explore,点击右上角齿轮形状的图标,然后点击兼容性视图设置
2.打开兼容性视图窗口,输入你要进入的网址,点添加.在兼容性视图中显示Internet站点,使
用microsoft兼容性列表这两个选项中点钩后,然后关闭选项卡
3.点击Internet选项,
4.选择安全选项卡,点击受信任的站点,点站点
5.在受信任的站点选项卡,输入需要添加的网址点击添加,对该区域的站点要求服务器验证,
不点钩,设置好后,关闭受信任的站点选项卡.
6.回到internet选项卡,点击自定义级别
7.所有带启用的项都选在启用上,都选好后确定,关闭所有选项卡和浏览器重新进入,就ok
了。
怎么设置浏览器兼容模式和安全站点网页中站点是e a s y S i t e内容管理平台主要管理的逻辑单元,站点管理是对一个I n t e r n e t的站点进行组织、维护和管理的功能集合当我们在使用电脑时,很多时候都需要用兼容性视图打开一些特殊的网站,与设置安全站点。
下面小编就和大家分享下W i n10系统I E和360浏览器浏览器兼容模式和安全站点的具体操作步骤。
设置浏览器兼容模式1、打开I E浏览器,右击浏览器顶部,勾选菜单栏将菜单栏调出来。
2、找到工具菜单栏,下面有一个兼容性视图设置。
3、打开兼容性视图设置窗口,输入网站地址,单击添加按钮,网址就自动添加到下面的列表中,并勾选在兼容性视图中显示I n t e r n e t站点。
4、如果是360浏览器,我们打开之后,在网址后面有一个闪电按钮,点击一下。
会出现一个极速模式和兼容模式,我们选择兼容模式即可。
(默认是极速模式)设置安全站点1、有时候我们也需要设置一下安全站点,我们自己开发的网站或者公司自己的网站有时候需要进行这样的设置,打开I E浏览器,在工具菜单栏下找到I n t e r n e t 选项。
2、在安全选项卡,选择受信任站点,单击站点按钮。
3、输入网址添加进来,添加之前去掉h t t p s验证。
补充:浏览器常见问题分析1.I E浏览器首次开机响应速度慢,需要数秒。
搞定办法:I E下选择工具-i n t e r n e t选项-连接-局域网设置-取消自动检测。
2.I E9图片显示不正常或干脆不显示,尤其是Q Q空间搞定办法:工具-i n t e r n e t选项-高级-加速图形-运用软件而非G P U选择。
3.打开网页显示搞定方案:工具-i n t e r n e t选项-高级中关闭重新启动i e后即开。
4.下载完所需安全控件也无法运用各种网银,付款时识别不出u盾搞定方案:据提示下载银行安全控件并安装。
插上u盾,拿建行为例:在开始菜单里-所有程序-中国建设银行E路护航网银安全组件-网银盾管理工具打开后点击你的u盾并注册。
浏览器兼容问题及解决⽅案 所谓的浏览器兼容性问题,是指因为不同的浏览器对同⼀段代码有不同的解析,造成页⾯显⽰效果不统⼀的情况。
在⼤多数情况下,我们的需求是,⽆论⽤户⽤什么浏览器来查看我们的⽹站或者登陆我们的系统,都应该是统⼀的显⽰效果。
所以浏览器的兼容性问题是前端开发⼈员经常会碰到和必须要解决的问题。
浏览器最关键的部分就是它的渲染引擎(Rendering Engine),也就是⼤家平常所说的的“内核”。
市场上浏览器种类很多,不同浏览器的内核也不尽相同,所以各个浏览器对⽹页的解析存在⼀定的差异。
常见的浏览器内核代表有五种,分别是Trident、Gecko、Blink、Webkit、Presto 。
他们代表的浏览器是:Trident:IE、Maxthon(遨游)、腾讯、Theworld世界之窗、360浏览器;Gecko:代表作品Mozilla Firefox 是开源的,它的最⼤优势是跨平台,能在Microsoft Windows、Linux和MacOS X等主要操作系统上运⾏;Webkit :代表作品Safari、Chrome ,是⼀个开源项⽬;Presto :代表作品Opera ,Presto是由Opera Software开发的浏览器排版引擎。
它也是世界上公认的渲染速度最快的引擎;Blink :由Google和Opera Software开发的浏览器排版引擎,2013年4⽉发布。
下⾯介绍⼀些常见的浏览器兼容问题及解决⽅案。
1、不同浏览器的标签默认的外补丁和内补丁不同解决⽅案: css ⾥增加通配符 * { margin: 0; padding: 0; }。
2、IE6双边距问题;在 IE6中设置了float , 同时⼜设置margin , 就会出现边距问题解决⽅案:设置display:inline;3、当标签的⾼度设置⼩于10px,在IE6、IE7中会超出⾃⼰设置的⾼度解决⽅案:超出⾼度的标签设置overflow:hidden,或者设置line-height的值⼩于你的设置⾼度4、图⽚默认有间距解决⽅案:使⽤float 为img 布局。
怎么设置浏览器兼容模式和安全站点浏览器的兼容模式和安全站点设置在Web开发中非常重要,可以确保网站在不同浏览器中正确显示和运行,并提供更加安全的在线体验。
本文将详细介绍如何设置浏览器的兼容模式和安全站点。
一、浏览器兼容模式设置浏览器兼容模式是为了解决不同浏览器之间的兼容性问题而设计的。
通过设置兼容模式,可以确保网站能够在不同的浏览器中正确显示和运行。
1.了解不同浏览器的兼容性首先,我们需要了解不同浏览器的兼容性情况。
目前主要的浏览器有Google Chrome、Mozilla Firefox、Microsoft Edge、Safari等。
每个浏览器都有自己的特点和兼容性问题,开发人员需要根据实际情况来设置兼容模式。
2.在HTML文档中设置兼容模式(1)使用最新版本的IE浏览器进行渲染:(2)使用特定版本的IE进行渲染:(3)使用Chrome Frame插件进行渲染:3. 使用CSS Hack解决浏览器兼容性问题如果在特定浏览器中出现了兼容性问题,可以考虑使用CSS Hack来解决。
CSS Hack是一种根据不同浏览器的特性和Bug来编写不同的CSS代码的技巧。
例如,可以使用以下CSS Hack来解决一些版本的IE浏览器的兼容性问题:/*只对IE浏览器生效*//*IE浏览器特有的CSS代码*/二、安全站点设置安全站点设置旨在保护网站的敏感信息和用户隐私,提供更加安全的在线体验。
根据网站的需求,可以采取以下措施来保护网站的安全性。
1.使用HTTPS协议HTTPS协议通过在传输过程中使用SSL(Secure Sockets Layer)或TLS(Transport Layer Security)加密传输数据,保护信息不被窃取或篡改。
在部署网站时,可以选择使用HTTPS协议来提供更高的安全级别。
2.应用安全标准和防火墙应用安全标准(如OWASP Top 10安全风险清单)可以帮助开发人员识别和纠正在Web应用程序中常见的安全漏洞。
前端开发中的浏览器兼容性问题与解决方案随着互联网的迅猛发展,前端开发成为了一个独立且重要的领域。
同时,不同浏览器的发展也带来了挑战,前端开发人员需要考虑并解决不同浏览器的兼容性问题。
本文将探讨浏览器兼容性问题的来源、影响因素以及一些解决方案。
浏览器兼容性问题源于不同浏览器之间对Web标准的实现差异。
虽然W3C发布的Web标准旨在统一不同浏览器的行为,但实际上,浏览器供应商对标准的解读和实现方式存在差异。
这导致了同一个网页在不同浏览器上呈现的效果有所差异,甚至在某些情况下无法正常显示。
首先,不同浏览器在CSS解析和渲染方面存在差异。
CSS是前端开发中用于定义网页样式的一种标记语言,但不同浏览器对于CSS属性的支持程度可能不同。
例如,在某些浏览器中,一些CSS属性可能无法正常解析,导致网页的布局和样式出现问题。
为了解决这个问题,开发人员需要对不同浏览器的CSS兼容性进行测试,并根据差异编写特定的CSS代码。
其次,JavaScript的支持和实现方式也因浏览器而异。
JavaScript是一种常用的脚本语言,用于实现网页的交互和动态效果。
然而,由于不同浏览器对JavaScript引擎的实现存在差异,开发人员需要针对不同浏览器编写兼容的JavaScript代码。
一种常见的解决方案是使用开源库,如jQuery,来处理不同浏览器的兼容性问题。
此外,不同浏览器对HTML5和CSS3的支持也有所差异。
HTML5和CSS3是最新的Web标准,提供了丰富的新特性和功能。
然而,旧版本的浏览器对这些新标准的支持有限,甚至完全不支持。
为了在不同浏览器上获得一致的体验,开发人员需要使用一些技术手段,如使用垫片(shim)或后备方案来模拟新特性,或者使用特定的前缀来适应不同浏览器。
解决浏览器兼容性问题的方法有很多,但其中一个有效的策略是采用渐进增强的设计原则。
渐进增强是一种设计理念,它将网页的核心功能作为基本功能,然后根据浏览器的能力逐渐添加和增强其他功能。
浏览器兼容性问题的解决方案随着互联网的不断发展,浏览器已经成为人们日常生活中必不可少的工具之一。
然而,不同的浏览器和浏览器版本之间的兼容性问题却给网站开发和维护带来了诸多麻烦。
本文将探讨浏览器兼容性问题带来的影响以及解决方案。
一、浏览器兼容性问题的影响1.用户体验不佳在不同的浏览器和版本下,网站的显示效果和交互体验往往差异很大,这会导致用户在使用网站时出现卡顿、界面错乱、功能失效等问题,影响用户的使用体验。
2.网站表现不佳由于不同的浏览器对网站代码的解释和执行方式不同,故网站在兼容性方面存在一定的缺陷。
这会导致网站在某些浏览器和版本下出现性能问题,例如加载速度变慢、页面响应时间变长等。
3.网站SEO降低由于不同的浏览器在搜索引擎中的排名不同,因此网站在兼容性方面出现问题会直接影响网站的搜索排名和SEO结果,降低网站被搜索引擎收录的概率和搜索排名。
二、1.编写符合标准的HTML、CSS和JavaScript代码兼容性问题的主要原因是网站代码不符合标准,因此,编写符合标准的代码是避免兼容性问题的基本手段。
在编写代码时要符合W3C标准,并注意不要使用浏览器非标准的属性和方法。
2.尽量避免使用特定浏览器的特定功能尽量避免使用特定浏览器的特定功能,以避免兼容性问题。
如果非常需要使用某个功能,则需要对该浏览器进行特别处理。
这可以通过JavaScript语言的特异性或条件注释来实现。
3.使用开源框架开源框架具有成熟的代码库,同时还能避免浏览器兼容性问题的发生。
常见的开源框架包括React、Angular和Vue.js等。
4.使用CSS Reset或Normalize.cssCSS Reset可以将所有浏览器的默认样式清空,从而减少兼容性问题的发生。
Normalize.css则可以实现一些浏览器的标准一致,从而让网站表现更稳定。
5.使用polyfillPolyfill是一种用于填补不同浏览器功能缺失的JavaScript库。
W i n7浏览器兼容性设置在哪里很多时候我们浏览器不能查看某些网页,都是因为兼容性问题?那要如何设置浏览器的兼容模式呢?现在小编就和大家说一下W i n7浏览器兼容性设置的方法。
一、兼容性视图设置1、打开I E浏览器。
2、选择工具---兼容性视图设置。
3、在在兼容性视图中显示所有网站前面勾选住。
点击关闭就可以了。
二、开发人员工具1、找到工具----F12开发人员工具。
2、在浏览器下方可以看到,这些菜单。
3、在兼容性视图菜单项中选择你要兼容的I E版本。
补充:浏览器常见问题分析1.I E浏览器首次开机响应速度慢,需要数秒。
搞定办法:I E下选择工具-i n t e r n e t选项-连接-局域网设置-取消自动检测。
2.I E9图片显示不正常或干脆不显示,尤其是Q Q空间搞定办法:工具-i n t e r n e t选项-高级-加速图形-运用软件而非G P U选择。
3.打开网页显示搞定方案:工具-i n t e r n e t选项-高级中关闭重新启动i e后即开。
4.下载完所需安全控件也无法运用各种网银,付款时识别不出u盾搞定方案:据提示下载银行安全控件并安装。
插上u盾,拿建行为例:在开始菜单里-所有程序-中国建设银行E路护航网银安全组件-网银盾管理工具打开后点击你的u盾并注册。
然后重新启动浏览器(一定要完全退出再进)进入付款网页上方会显示是否允许加载项,选择在所有站点允许。
这时候可能还需要再次重新启动浏览器进入付款页面这时候你期待的u盾密码输入框会出现。
这样就o k了5.打开网页一直刷新-失败-刷新,无限循环搞定办法:工具-i n t e r n e t选项-高级-禁用脚本调试。
6.I E习惯性停止工作或崩溃。
搞定办法:工具-管理加载项,一一禁用排除以找到某个插件的问题。
由于情况多种多样,有些时候找不到具体原因,我们可以通过重置来搞定工具-i n t e r n e t选项-高级。
相关阅读:浏览器实用技巧现在打开了台式电脑桌面上的360安全浏览器的主页。
简历填写说明1常用浏览器兼容性设置打开招聘门户根据使用不同浏览器的类型按方法设置浏览器兼容模式后简历填写即可正常显示。
如果电脑中有IE浏览器则建议使用IE浏览器,没有则可根据以下不同浏览器设置方法对浏览器兼容性进行设置。
1.1IE浏览器兼容性设置浏览器设置工具:;1.2360浏览器、360极速浏览器在浏览器中设置招聘门户地址为兼容模式。
通过图标“”设置为兼容模式。
1.3搜狗浏览器在浏览器中设置招聘门户地址为兼容模式。
通过图标“”设置为兼容模式。
1.4谷歌浏览器在浏览器中设置招聘门户地址为兼容模式。
通过提示允许“FLASH”设置即可正常显示。
2 注册登录2.1注册如果您是未注册用户,请在用户登录区,点击“【注册】”,阅读注册须知文档,待“【接受】”按钮变成黄色后点击此按钮,按要求填写邮箱、密码、姓名、身份证号等关键基本注册信息,点击“【提交】”即可。
邮箱和姓名及身份证号信息必须真实有效。
账号注册是同一个身份证号与电子邮箱只能使用一次。
2.2登录如果您已经注册,可直接在用户登录区填写注册邮箱和密码,点击“【登录】”,填写/更新简历或修改应聘岗位。
2.3忘记密码如果您注册后再次登录时忘记密码,请点击用户登录区右下角的“【忘记密码】”按钮,在弹出的对话框内填写注册邮箱,系统将把密码发送至该邮箱。
3我的简历带有“*”符号的信息项为必填项,请务必认真填写。
3.1 “基本信息”1.根据基本信息设置字段逐一填写基本信息。
2.本人免冠照片,文件要求在512k以下,jpg格式。
基本信息填写完成点击“【保存&下一步】”按钮,系统依照顺序进入到下一个简历信息集维护界面。
功能按钮说明:【保存并添加】:保存当前维护信息并添加至对应信息集下;【保存&下一步】:将当前数据提交并依照系统顺序进入到下一个简历信息集维护界面;【上一步】:回到上一信息集维护界面;【下一步】:跳过当前信息维护依照系统顺序进入到下一个简历信息集维护界面;【操作&修改】:针对某条数据进行修改;【操作&删除】:针对某条数据进行删除;3.2 “学习经历(从本科填起)”从本科开始逐一填写学历信息至最高学历信息。
浏览器兼容性问题总结浏览器兼容性问题总结浏览器兼容性问题是指不同的浏览器在解析和渲染网页时可能出现的差异和问题。
由于不同浏览器厂商对网页标准的理解和实现不同,因此在开发和设计网页时需要考虑不同浏览器可能存在的兼容性问题。
下面将对浏览器兼容性问题进行综述。
1. 标准支持差异不同浏览器对网页标准(如HTML、CSS和JavaScript)的支持程度存在差异。
有些浏览器可能支持新的HTML5和CSS3特性,而另一些可能不支持或支持的不完全。
这导致在开发网页时需要根据目标浏览器的兼容性情况调整代码,以确保在不同浏览器中都能正确显示。
2. 排版和布局差异不同浏览器对网页元素的排版和布局有不同的解析方式和默认样式。
这可能导致在不同浏览器中显示的页面布局不一致,元素间的间距和大小可能有所差异。
为了解决这个问题,开发者需要使用CSS重置样式或使用浏览器特定的样式前缀来确保在不同浏览器中保持一致的布局。
3. JavaScript兼容性不同浏览器对JavaScript的支持程度也存在差异。
一些浏览器可能支持新的JavaScript特性和API,而另一些浏览器可能仅支持较旧的版本。
这可能导致在使用新特性时出现错误或页面无法正常工作。
为了解决这个问题,开发者需要对目标浏览器进行兼容性测试,使用polyfill或其他替代方案来实现跨浏览器兼容性。
4. 图片和多媒体兼容性不同浏览器对图片和多媒体格式的支持也存在差异。
一些浏览器可能支持新的图片格式(如WebP),而另一些可能不支持。
此外,浏览器对视频和音频的编解码支持也可能存在差异。
为了确保在不同浏览器中正常显示图片和多媒体内容,开发者需要提供多种格式的备选方案,并使用HTML5的元素来实现在不同浏览器中的兼容性。
5. 响应式设计兼容性响应式设计是一种适应不同屏幕尺寸和设备的设计方法。
由于不同浏览器的窗口大小和设备特性不同,因此在不同浏览器中实现响应式设计时可能存在兼容性问题。
下面列出了各种浏览器兼容性问题,写css的时候可以参考。
1、仅IE7与IE5.0可以识别*+html select {…}当面临需要只针对IE7与IE5.0做样式的时候就可以采用这个HACK。
2、仅IE7可以识别*+html select {…!important;}当面临需要只针对IE7做样式的时候就可以采用这个HACK。
3、IE6及IE6以下识别* html select {…}这个地方要特别注意很多博客都写成了是IE6的HACK其实IE5.x同样可以识别这个HACK。
其它浏览器不识别。
4、html/**/ >body select {…}这句与上一句的作用相同。
5、仅IE6不识别,屏蔽IE6select { display /*屏蔽IE6*/:none;}这里主要是通过CSS注释分开一个属性与值,注释在冒号前。
6、仅IE6与IE5不识别,屏蔽IE6与IE5select/**/ { display /*IE6,IE5不识别*/:none;}这里与上面一句不同的是在选择符与花括号之间多了一个CSS注释。
不屏蔽IE5.57、仅IE5不识别,屏蔽IE5select/*IE5不识别*/ {…}这一句是在上一句中去掉了属性区的注释。
只有IE5不识别,IE5.5可以识别。
8、盒模型解决方法selct {width:IE5.x宽度; voice-family :”\”}\”"; voice-family:inherit; width:正确宽度;}盒模型的清除方法不是通过!important来处理的。
这点要明确。
9、只有Opera识别@media all and (min-width: 0px){ select {……} }针对Opera浏览器做单独的设定。
以上都是写CSS中的一些HACK,这些都是用来解决局部的兼容性问题,如果希望把兼容性的内容也分离出来,不妨试一下下面的几种过滤器。
这些过滤器有的是写在CSS中通过过滤器导入特别的样式,也有的是写在HTML中的通过条件来链接或是导入需要的补丁样式。
1. 区别FF和IE1-1首先,当然是!important大法,可以提升指定样式规则的应用优先权,如下面的例子:插入代码:div{background-color: red !important;background-color: blue;}因为!important声明在IE6中并不是绝对的,它会被之后的同名属性定义所替换。
也就是说在上面的例子中,IE6所应用的是最后一个背景色的值,即“blue”;而在FF中背景色的值为“red”。
1-2还有一种方法,就是IE浏览器可以识别“>”等一些符号,如“~”、“`”、“<”等,都只有IE 可以识别,但是不合理,!important是符合标准的。
所以插入代码:div{background-color: red;>background-color: blue;}在FF中得到的是背景色红色,而在IE中得到的背景色是蓝色,根据样式重定义的规则,如果浏览器可以识别“>”,则应该得到的蓝色的背景,因此可以知道“>”只有IE可以识别。
这样,我们就可以把FF和IE的样式分离开。
下面就是解决IE自己的问题了。
2. 区别IE5.5和IE的其他版本看一个例子:插入代码:div{>background-color: black;>background-color /*IE5.5*/: green;}这个例子使用了“>”,只有IE可以识别,在IE6中得到了黑色的背景;而在IE5.5中得到的绿色的背景;在IE5中也得到了黑色的背景。
这就说明了第二句定义只有IE5.5能识别,这是个很早就公布的HACK,可以在网上找到相关的资料,要注意的就是在属性名之后是有一个空格的。
到此我们已经把FF、IE5.5、IE6分离出来了,那IE5呢?其实现在我们只要把IE5跟IE6分开就OK了。
3. 区别IE5与IE5.5+插入代码:div{>background-color: red;}div/*IE5.5+*/{>background-color: black;}这里我们又用到一个HACK,就是“div/**/{}”,这个定义在IE5以上的版本才能识别出来。
这个例子得到的结果是,在IE5中的背景色为红色;在IE5以上版本中得到的是黑色背景。
4. 完整的Hack这样我们就可以为不同的浏览器定义不同的样式了。
来看个完整的例子:插入代码:div{width: 500px;height: 50px;background-color: red !important;/*FF*/background-color: blue;/*IE5*/text-align:center;}div/*IE5.5+*/{>/*IE only*/background-color: black;/*IE6*/>/*IE only*/background-color /*IE5.5*/: green;}需要注意的是,在上面例子中“background-color”定义的顺利不能改变,即FF-IE5-IE6-IE5.5。
对于IE的定义在属性前要加“>”,因为“div/**/{}”这个HACK在FF中可以识别。
由于不同的浏览器,比如IE6,IE7,FF等,对CSS的解析认识不一样,因此会导致生成的页面效果不一样,得不到我们所需要的页面效果。
这个时候我们就需要针对不同的浏览器去写不同的CSS,让它能够同时兼容不同的浏览器,能在不同的浏览器中也能得到我们想要的页面效果。
CSS hack:区分IE6,IE7,firefox;区别不同浏览器,CSS hack写法:区别IE6与FF:background:orange;*background:blue;区别IE6与IE7:background:green !important;background:blue;区别IE7与FF:background:orange; *background:green;区别FF,IE7,IE6:background:orange;*background:green;_background:blue; background:orange;*background:green !important;*background:blue;注:IE都能识别*;标准浏览器(如FF)不能识别*;IE6能识别*,但不能识别!important,IE7能识别*,也能识别!important;FF不能识别*,但能识别!important;IE6 IE7 FF* √ √ ×!important × √ √浏览器优先级别:FF<IE7<IE6,CSS hack书写顺序一般为FF IE7 IE6selector{property:value; /* 所有浏览器 */property:value\9; /* 所有IE浏览器 */+property:value; /* IE7 */_property当然,注意顺序。
根据CSS的优先性,上面的写法,分别针对Firefox、IE8、IE7和IE6显示值。
让我们看看这个:CSS代码如下:p.ie{height:60px;text-align:center;line-height:60px;border:1px dashed#bbb;background:#f7f7f7;font:15;color:blue; // 所有浏览器color:brown\9; // 所有IE浏览器+color:red; // IE7_color:green; // IE6}HTML 代碼:<body style="width:500px;margin:0 auto;"><p class="ie"><span style="display:block;display:none\9;">嘿嘿,小子竟然也用Firefox,蓝色文字。
</span><!--[if IE 8]>不错不错,挺先进的嘛,使用IE8呢!文字是褐色的。
<![endif]--> <!--[if IE 7]>你,IE7,红色文字!<![endif]--><!--[if IE 6]>孩子,虽然显示的是绿色文字,不过,IE6可不是好东西呢!<![endif]--></p></body>注意下面介绍的这些hack写法仅适用于XHTML1.0。
如果没有在HTML最前加上<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="/1999/xhtml">那么效果将不一样!此外,这里所说的IE8,不是指IE8的兼容模式,因为IE8的兼容模式其实就是IE7。
区别IE6、7与FF/IE8:background:blue;*background:orange;引用显示效果:IE 6/7:orangeFF/IE8:blue原理:FF/IE8不支持*开头,而IE6/7都支持。
区别IE6与IE7/IE8/FF:background:green;_background:blue;引用显示效果:IE7/8/FF:greenIE6:blue原理:IE6支持下划线"_",IE7、8和firefox均不支持下划线。
区别FF/IE8和IE6/7:background:orange;+background:green;-background:blue;或者background:orange;*background:green!important;*background:blue;引用显示效果:IE6:blueIE7:greenFF/IE8:orange原理:IE6能识别-,IE7能识别+,IE8和FF都不能识别+和-IE8/FF都不识别*,IE7优先识别!important,IE6不能识别!important。
关于IE8的hacks:.test{color:/*\**/#00f\9; /* IE8 only */color:#00f\9; /* 适用于所有IE版本 */}可同时区分IE8、IE7、IE6、Firefox的CSS hacks:.test{color:#000; /* Firefox */color:/*\**/#00f\9; /* IE8 */*color:#f00; /* IE7 */_color:#0f0; /* IE6 */}添加相应的注释解决兼容性问题注释相应的Css文件:<link rel="stylesheet" type="text/css" href="css/style.css" media="screen" /><!--[if IE 6]><link rel="stylesheet" type="text/css" href="css/IE6style.css" media="screen" /><![endif]--><!--[if IE 7]><link rel="stylesheet" type="text/css" href="css/IE7style.css" media="screen" /><![endif]--><!--[if gte IE 8]><link rel="stylesheet" type="text/css" href="css/IE8style.css" media="screen" /><![endif]-->注释相应的Css 内容:<!--[if ie 6]><style><!--#warp{ padding-bottom:11px;} --></style><![endif]--><!--[if ie 7]><style><!--#warp{ padding-bottom:11px;} --></style><![endif]--><!--[if ie 8]><style><!--#warp{ padding-bottom:11px;}--></style><![endif]-->技巧:如果在你的网页里面加上如下代码(仅限IE8):<meta http-equiv="x-ua-compatible" content="ie=7" />那么在你写css的时候无须考虑IE8了,你只需要写IE7的css就行了,IE8的HACK可以无须考虑了,上面代码的意思就是页面用IE7的核心来渲染你的页面,只对IE8支持,别的浏览器不支持.比较全面的CSS HACK 区别于ie6/7/8/firefox<meta http-equiv="x-ua-compatible" content="ie=7" />把这段代码放到页面里,在ie8里面的页面解析起来就跟ie7一模一样的了,所以,基本上可以无视ie8,剩下的代码只需要这样写就可以了(也就是说无须再给IE8 写HACK)background:#ffc; /* 对firefox有效*/*background:#ccc; /* 对ie7有效 */_background:#000; /* 只对ie6有效 */在网站设计的时候,应该注意css样式兼容不同浏览器问题,特别是对完全使用DIV CSS设计的网,就应该更注意IE6 IE7 FF对CSS样式的兼容,不然,你的网乱可能出去不想出现的效果!所有浏览器通用height: 100px;IE6 专用_height: 100px;IE6 专用*height: 100px;IE7 专用*+height: 100px;IE7、FF 共用height: 100px !important;一、CSS HACK1, !important随着IE7对!important的支持, !important 方法现在只针对IE6的HACK.(注意写法.记得该声明位置需要提前.)以下为引用的内容:<style>#wrapper{width: 100px!important; /* IE7+FF */width: 80px; /* IE6 */</style>2, IE6/IE7对FireFox以下为引用的内容:*+html 与 *html 是IE特有的标签, firefox 暂不支持.而*+html 又为 IE7特有标签.<style>#wrapper{#wrapper { width: 120px; } /* FireFox */*html #wrapper { width: 80px;} /* ie6 fixed */*+html #wrapper { width: 60px;} /* ie7 fixed, 注意顺序 */}</style>注意:*+html 对IE7的HACK 必须保证HTML顶部有如下声明:<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01Transitional//EN””/TR/html4/loose.dtd”>二、万能 float 闭合关于 clear float 的原理可参见 [How To Clear Floats Without Structural Markup]将以下代码加入Global CSS 中,给需要闭合的div加上class=”clearfix” 即可,屡试不爽.以下为引用的内容:<style>/* Clear Fix */.clearfix:after{content:”.”;display:block;height:0;clear:both;visibility:hidden;}.clearfix{display:inline-block;}/* Hide from IE Mac */.clearfix {display:block;}/* End hide from IE Mac *//* end of clearfix */</style>三、其他兼容技巧1, FF下给 div 设置 padding 后会导致 width 和 height 增加, 但IE不会.(可用!important解决) 如width:115px !important;width:120px;padding:5px;必须注意的是, !important; 一定要在前面。