搜索
首页web前端css教程解决浏览器兼容性的小技巧

解决浏览器兼容性的小技巧

Sep 10, 2018 pm 02:53 PM
css浏览器兼容性

当我们在进行前端网页开发,编写页面的css样式的时候,往往是需要考虑的不同浏览器的兼容问题的,让我们设计开发的前端页面可以在不同的浏览器上都可以正常展示。本章我们就给大家带来一些解决浏览器兼容性的小技巧,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

一、chrome下会让小于12px的文本字体默认为12px显示,让chrome支持小于12px的字体

box{ font-size: 8px; -webkit-text-size-adjust: none;}

但是,上面这个方法 chrome27 以后就不能用了。但我们可以用 css3 解决这个问题 

box{ font-size: 12px; -webkit-transform: scale(0.75);}

二、不同浏览器的标签默认的外补丁和内补丁不同,随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大,碰到频率:100%

解决方案:

* {margin:0;padding:0;}

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

三、设置较小高度标签(一般小于10px),在ie6,ie7,遨游中高度超出自己设置高度

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

碰到频率:60%

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

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

四、图片默认有间距

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

碰到几率:20%

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

备注:因为img标签是行内属性标签,所以只要不超出容器宽度,img标签都会排在一行里,但是部分浏览器的img标签之间会有个间距。去掉这个间距使用float是正道

五、标签最低高度设置min-height不兼容

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

碰到几率:5%

解决方案:如果我们要设置一个标签的最小高度200px,需要进行的设置为:

{min-height:200px; height:auto !important; height:200px; overflow:visible;}

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

六、const问题

说明:Firefox下,可以使用const关键字或var关键字来定义常量;

IE下,只能使用var关键字来定义常量.

解决方法:统一使用var关键字来定义常量.

七. window.location.href问题

说明:IE或者Firefox2.0.x下,可以使用window.location或window.location.href;

Firefox1.5.x下,只能使用window.location.

解决方法:使用window.location来代替window.location.href.

八、 ul和ol列表缩进问题

消除ul、ol等列表的缩进时,样式应写成:

list-style:none;margin:0px;padding:0px;

经验证,在IE中,设置margin:0px可以去除列表的上下左右缩进、空白以及列表编号或圆点,设置padding对样式没有影响;在 Firefox 中,设置margin:0px仅仅可以去除上下的空白,设置padding:0px后仅仅可以去掉左右缩进,还必须设置list- style:none才能去除列表编号或圆点。也就是说,在IE中仅仅设置margin:0px即可达到最终效果,而在Firefox中必须同时设置margin:0px、 padding:0px以及list-style:none三项才能达到最终效果。

九、IE与宽度和高度的问题

IE不认得min-这个定义,但实际上它把正常的width和height当作有min的情况来使。这样问题就大了,如果只用宽度和高度,正常的浏览器里这两个值就不会变,如果只用min-width和min-height的话,IE下面根本等于没有设置宽度和高度。

比如要设置背景图片,这个宽度是比较重要的。要解决这个问题,可以这样:

box{ width: 80px; height: 35px;}html>body #box{ width: auto;height: auto; min-width: 80px; min-height: 35px;}

十、页面的最小宽度

如上一个问题,IE不识别min,要实现最小宽度,可用下面的方法:

container{ min-width: 600px;width:expression(document.body.clientWidth< 600? "600px": "auto" );}

第一个min-width是正常的;但第2行的width使用了Javascript,这只有IE才认得,这也会让你的HTML文档不太正规。它实际上通过Javascript的判断来实现最小宽度。


以上是解决浏览器兼容性的小技巧的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
检测非活动用户检测非活动用户Apr 13, 2025 am 11:08 AM

大多数情况下,您并不真正在乎用户是否积极参与或暂时非活动。不活跃,意思,也许他们

Wufoo ZapierWufoo ZapierApr 13, 2025 am 11:02 AM

Wufoo一直在集成方面非常出色。他们与特定应用程序(例如广告系列显示器,MailChimp和Typekit)进行集成,但他们也

jamstack景观jamstack景观Apr 13, 2025 am 11:00 AM

Netlify发明了Jamstack一词,这不是一个大秘密。虽然可以在不使用Netlify的情况下拥抱jamstack,但值得注意的是Netlify在

为什么我们使用.html代替.htm?为什么我们使用.html代替.htm?Apr 13, 2025 am 10:59 AM

来自安迪的有趣问题:

我的开发ama的剪辑我的开发ama的剪辑Apr 13, 2025 am 10:55 AM

我最近在开发人员上做了一个AMA。只是借此机会在这里搬迁一些答案,例如一个好的indiewebber。

我们应该构建几个网站?我们应该构建几个网站?Apr 13, 2025 am 10:42 AM

有人给我发了电子邮件:

Gatsby和WordPressGatsby和WordPressApr 13, 2025 am 10:39 AM

Gatsby和WordPress是一个有趣的组合。一方面,这很有意义。盖茨比可以从任何地方吸收数据,而WordPress具有

如何在Gatsby中获取当前页面URL如何在Gatsby中获取当前页面URLApr 13, 2025 am 10:37 AM

这项看似简单的任务使我在网站上工作时抓了几个小时。事实证明,获取当前页面URL

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

MinGW - 适用于 Windows 的极简 GNU

MinGW - 适用于 Windows 的极简 GNU

这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具