`

常见浏览器兼容问题(转载)

    博客分类:
  • web
 
阅读更多
浏览器兼容问题一:不同浏览器的标签默认的margin和padding不同

问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。

碰到频率:100%

解决方案:

CSS里加一行

1

*{margin:0;padding:0;}

备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的CSS文件开头都会用通配符*来设置各个标签的内外补丁是0。

浏览器兼容问题二:块属性标签float后,又有横行的margin情况下,在IE6显示margin比设置的大

问题症状:常见症状是IE6中后面的一块被顶到下一行

碰到频率:90%(稍微复杂点的页面都会碰到,float布局最常见的浏览器兼容问题)

解决方案:在float的标签样式控制中加入 display:inline;将其转化为行内属性

备注:我们最常用的就是div+CSS布局了,而div就是一个典型的块属性标签,横向布局的时候我们通常都是用div float实现的,横向的间距设置如果用margin实现,这就是一个必然会碰到的兼容性问题。

浏览器兼容问题三:设置较小高度标签(一般小于10px),在IE6,IE7,遨游中高度超出自己设置高度

问题症状:IE6、7和遨游里这个标签的高度不受控制,超出自己设置的高度

碰到频率:60%

解决方案:给超出高度的标签设置overflow:hidden;或者设置行高line-height 小于你设置的高度。

备注:这种情况一般出现在我们设置小圆角背景的标签里。出现这个问题的原因是IE8之前的浏览器都会给标签一个最小默认的行高的高度。即使你的标签是空的,这个标签的高度还是会达到默认的行高。

浏览器兼容问题四:行内属性标签,设置display:block后采用float布局,又有横行的margin的情况,IE6间距bug

问题症状:IE6里的间距比超过设置的间距

碰到几率:20%

解决方案:在display:block;后面加入display:inline;display:table;

备注:行内属性标签,为了设置宽高,我们需要设置display:block;(除了input标签比较特殊)。在用float布局并有横向的margin后,在IE6下,他就具有了块属性float后的横向margin的bug。不过因为它本身就是行内属性标签,所以我们再加上display:inline的话,它的高宽就不可设了。这时候我们还需要在display:inline后面加入display:talbe。

浏览器兼容问题五:图片默认有间距

问题症状:几个img标签放在一起的时候,有些浏览器会有默认的间距,加了问题一中提到的通配符也不起作用。

碰到几率:20%

解决方案:使用float属性为img布局

备注:因为img标签是行内属性标签,所以只要不超出容器宽度,img标签都会排在一行里,但是部分浏览器的img标签之间会有个间距。去掉这个间距使用float是正道。(我的一个学生使用负margin,虽然能解决,但负margin本身就是容易引起浏览器兼容问题的用法,所以我禁止他们使用)

浏览器兼容问题六:标签最低高度设置min-height不兼容

问题症状:因为min-height本身就是一个不兼容的CSS属性,所以设置min-height时不能很好的被各个浏览器兼容

碰到几率:5%

解决方案:如果我们要设置一个标签的最小高度200px,需要进行的设置为:{min-height:200px; height:auto !important; height:200px; overflow:visible;}

备注:在B/S系统前端开时,有很多情况下我们又这种需求。当内容小于一个值(如300px)时。容器的高度为300px;当内容高度大于这个值时,容器高度被撑高,而不是出现滚动条。这时候我们就会面临这个兼容性问题。

浏览器兼容问题七:各种特殊样式的兼容,比如透明度、圆角、阴影等。特殊样式每个浏览器的代码区别很大,所以,只能现查资料通过给不同浏览器写不同的代码来解决。

JS解决IE6下png透明失效的问题

做兼容页面的方法是:每写一小段代码(布局中的一行或者一块)我们都要在不同的浏览器中看是否兼容,当然熟练到一定的程度就没这么麻烦了。建议经常会碰到兼容性问题的新手使用。很多兼容性问题都是因为浏览器对标签的默认属性解析不同造成的,只要我们稍加设置都能轻松地解决这些兼容问题。如果我们熟悉标签的默认属性的话,就能很好的理解为什么会出现兼容问题以及怎么去解决这些兼容问题。
分享到:
评论

相关推荐

    【转载】CSS圆角化图片(三)

    在实际应用中,可能会遇到浏览器兼容性问题。虽然现代浏览器广泛支持CSS3的`border-radius`,但一些较旧的版本可能不支持。为了保证兼容性,可以使用前缀 `-webkit-`, `-moz-`, `-ms-`, `-o-` 来覆盖这些浏览器的旧...

    基于Web的套打方案集粹(转载)

    2. **兼容性好**:大多数浏览器内置PDF阅读器。 **缺点**: 1. **依赖Adobe插件**:需要安装Adobe Reader或其他PDF阅读器。 2. **非普遍接受**:在中国等地区,PDF的普及程度不如西方国家。 #### 五、采用纯...

    15天学会JQuery(转载)

    8. **兼容性**: jQuery对不同浏览器的兼容性极佳,尤其对于老版本的Internet Explorer,这使得它在项目中广泛应用。 9. **版本更新**: 随着Web技术的发展,jQuery也不断迭代,如jQuery 3.x移除了对旧浏览器的支持,...

    转载软件测试试题

    - **浏览器兼容性**:特别是对于Web应用,需要确保在各种浏览器及版本中都能正常显示和功能。 - **数据兼容性**:检查软件处理不同类型和格式的数据的能力。 #### 判别程序性能问题的方法 当发现程序在Windows上...

    常用HTML meta 标签属性(网站兼容与优化需要)

    它可用于浏览器(如何显示内容或重新加载页面),搜索引擎(关键词),或其他 web 服务。 —— W3School 必要属性 属性 值 描述 content some text 定义与http-equiv或name属性相关的元信息 可选属性 ...

    软件测试基本方法(转载)

    源码级的单元测试可以帮助开发者快速定位和修复代码中的问题,常见的单元测试工具有JUnit(Java)、pytest(Python)和NUnit(.NET)等。 2. 集成测试:当多个单元组合在一起时,集成测试用于检查它们之间的交互和...

    tab页小插件(转载

    7. **兼容性**:确保在主流浏览器上正常工作,包括Chrome、Firefox、Safari、Edge等。 8. **API接口**:提供丰富的API接口,如获取当前选中的Tab,切换到指定Tab等,方便开发者控制Tab行为。 9. **文档和示例**:...

    flash制作的酒店全景(转载)

    总结,"Flash制作的酒店全景"是过去一种常见的在线展示方式,它结合了ActionScript编程和视差效果,提供了一种互动式的浏览体验。然而,随着技术的进步,现在更多的开发倾向于使用HTML5等现代Web技术来实现类似的...

    电脑基本操作技巧(转载)

    - 兼容性问题解决 **21. 修改文件夹视图模式** - **描述**:介绍了如何自定义文件夹视图。 - **知识点**: - 文件夹选项设置 - 视图模式选择 - 预览窗格使用 **22. 图片浏览与编辑** - **描述**:提供了图片...

    sso详细设计说明书(下篇)转载(海纳百川文章http://www.cnblogs.com/David-weihw/a)

    本详细设计说明书的下篇将深入探讨SSO的工作原理、实现方式以及常见问题。以下是SSO的相关知识点: 1. **SSO工作原理**: SSO的核心思想是通过一个中央认证服务器(CAS,Central Authentication Service)对用户...

    air中文官方帮助文档

    它结合了浏览器的功能和桌面应用程序的优点,让用户无需打开网络浏览器即可使用这些应用程序。 #### 二、法律声明与版权信息 - **版权**:该文档的版权归Adobe Systems Incorporated所有,未经允许不得复制或传播...

    性能测试经验总结资料,适宜初学和中级(由于是公司内部资料,不想花分勿下)

    - **录制过程无法启动IE的问题**:解决在录制测试脚本过程中遇到的浏览器兼容性问题。 - **录制脚本乱码问题**:处理因编码不一致导致的脚本乱码问题。 - **脚本重新生成**:在修改测试场景后,如何高效地更新和...

Global site tag (gtag.js) - Google Analytics