学编码之前,当先学排查问题的能力。

在那个 IE 浏览器 当道的时代,前端开发简直就是刀耕火种一般,一个简单的圆角模块,嘿...不好意思,它不支持,用图片吧。

但凡经历过 IE 的洗礼,就会知道当时哪些 红极一时 的浏览器 bug,特别是 IE 6,它真是一个 老六 啊,悄悄咪咪的挖了好多坑,刚填平一个,又掉进另一个。例如:双倍外边距margin自动居中PNG 图片不透明 等。

如今,能避免这些奇奇怪怪的 bug,真应该给 Google Chrome “烧香”。

浏览器兼容是什么

虽然现在不会再去填 老六 的坑,但由于 CSS 标准每年都在更新,有些新的 CSS 规范在一些旧版本浏览器上还是不支持,这时候如果使用了不支持的 CSS 规范,就会出现属性无效的情况;还可能某些 CSS 属性在 Chrome 浏览器上面支持,但在 Edge 浏览器不支持;这些就是 浏览器兼容 问题。

遇到过的经典坑

曾经有这么一个问题,部分 iOS 手机微信中公众号网页出现了白屏,页面打不开,然而开发环境一切正常,最后排查到是这么一个正则表达式引起的 /(?<=\.)\w*/,原因是此写法在 iOS 16.3 都还不支持,导致 JS 运行报错,页面无法打开。兼容如下:

浏览器兼容性查询

在使用某个不确定的 CSS / JS 属性之前,就应该先查询一下,这个属性在各个浏览器的支持情况。

或者浏览器出现某个样式 bug 的时候,可以先排查是否是兼容性引起的。

  • 首选 Can I Use

浏览器兼容性查询,首选 Can I Use( https://caniuse.com/ )网站,这个网站会根据输入的属性关键词查询出该属性在各个浏览器的支持情况。

LCH() 颜色表示方法为例:

  • 备用 MDN

MDN ( https://developer.mozilla.org/ ) 在 CSS / JS / HTML 等规范上,都提供了详细的兼容性说明,可以作为补充。

LCH() 颜色表示方法为例:

总结

编程里面兼容问题一直存在,无法避免,但我们在使用某些新的特性之前,应当对此有心理准备,使用新特性有什么后果,应当有一个心理预期,避免出现问题时候被打得措手不及。

Web前端入门第 26 问:CSS 浏览器兼容性怎么查?的更多相关文章

  1. web前端入坑第五篇:秒懂Vuejs、Angular、React原理和前端发展历史

    秒懂Vuejs.Angular.React原理和前端发展历史 2017-04-07 小北哥哥 前端你别闹 今天来说说 "前端发展历史和框架" 「前端程序发展的历史」 「 不学自知, ...

  2. 好程序员web前端分享18个用CSS制作出来的东西

    好程序员web前端分享18个用CSS制作出来的东西,与流行的看法相反,CSS不仅仅是用来提供一个WEB页面的基本风格,以使它看起来更有吸引力.还有很多其他的事情,CSS也可以做的很好.由于它创建动画和 ...

  3. 进击的Python【第十三章】:Web前端基础之HTML与CSS样式

    进击的Python[第十四章]:Web前端基础之HTML与CSS样式 一.web框架的本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客 ...

  4. 好程序员web前端分享值得参考的css理论:OOCSS、SMACSS与BEM

    好程序员web前端分享值得参考的css理论:OOCSS.SMACSS与BEM 最近在The Sass Way里看到了Modular CSS typography一文,发现文章在开头部分就提到了OOCS ...

  5. Android零基础入门第26节:layout_gravity和gravity大不同

    原文:Android零基础入门第26节:layout_gravity和gravity大不同 上一期我们一起学习了LinearLayout线性布局的方向.填充模型和权重,本期来一起学习LinearLay ...

  6. web前端入坑第二篇:web前端到底怎么学?干货资料! 【转】

    http://blog.csdn.net/xllily_11/article/details/52145172 版权声明:本文为博主[小北]原创文章,如要转载请评论回复.个人前端公众号:前端你别闹,J ...

  7. Brackets - 强大免费的开源跨平台Web前端开发工具IDE (HTML/CSS/Javascript代码编辑器)

    Brackets 是一个免费.开源且跨平台的 HTML/CSS/JavaScript 前端 WEB 集成开发环境 (IDE工具).该项目由 Adobe 创建和维护,根据MIT许可证发布,支持 Wind ...

  8. web前端(7)—— 了解CSS样式,引入css样式的方式

    CSS 在前面大概的介绍了css,从本片博文开始,会详细的介绍它,在最开始介绍web前端时,打开百度首页,当时我提出了一个问题,为什么百度首页的输入框可以放在正中间,就是由于有css的控制,我们可以打 ...

  9. [转载]Brackets - 强大免费的开源跨平台Web前端开发工具IDE (HTML/CSS/Javascript代码编辑器)

    http://brackets.io/ Brackets 是一个免费.开源且跨平台的 HTML/CSS/JavaScript 前端 WEB 集成开发环境 (IDE工具).该项目由 Adobe 创建和维 ...

  10. web前端的10个顶级CSS UI开源框架

    随着CSS3和HTML5的流行,我们的WEB页面不仅需要更人性化的设计理念,而且需要更酷的页面特效和用户体验.作为开发者,我们需要了解一些宝贵的CSS UI开源框架资源,它们可以帮助我们更快更好地实现 ...

随机推荐

  1. Nickel pg walkthrough Intermediate window

    nmap ┌──(root㉿kali)-[~] └─# nmap -p- -A -sS 192.168.196.99 Starting Nmap 7.94SVN ( https://nmap.org ...

  2. nginx basic验证

    打开个生成htpasswd的网站 输入信息生成结果 将结果保存到nginx一个文件里面 修改nginx的conf文件 auth_basic "webA"; #这个"&qu ...

  3. Mac安装Hive

    一.基础信息 下载地址:http://archive.apache.org/dist/hive/ 版本:hive3.1.1   依赖:hadoop3.2.1.mysql 解压目录:/Users/rob ...

  4. NolanPro 详细部署教程

    自己想办法去弄授权,只提供部署教程 服务器搭建教程 1 诺兰群里找 @NolanNarkbot 点击start 2 群里发送 /check@NolanNarkbot 再找 @NolanNarkbot ...

  5. Linux - top相关的快捷键

    q:退出top命令窗口(quit). k:按照进程ID终止(kill)一个进程.例如,你可以输入k,然后输入进程的PID来终止它. r:重新设置进程的优先级.输入r后,你可以输入新的优先级值. f:进 ...

  6. Scala高阶函数 2(以函数作为返回值,函数柯里化,应用函数)

    package com.wyh.day01 object ScalaFun4 { def main(args: Array[String]): Unit = { /** * 以函数作为返回值 */ d ...

  7. 玩转摄像头之MT9V034(最新打样,展示下,欢迎观摩,哈哈)低照度 红外透视应用

    分辨率:752*480  低照度 效果超好先上图 图像处理.物联网.fpga.stm32研究 我的店铺:ccjt.taobao.com 

  8. php获取类名

    <?php class ParentClass { public static function getClassName() { return __CLASS__; } } class Chi ...

  9. C# 一般处理程序ashx用于验证码

    1.用VS2019建立一个web应用程序,选mvc模板 2.选中项目邮件新建文件夹Webservice,然后添加一般处理程序Verify.ashx然后右键打开改写如下 1 public class V ...

  10. VMware15.5虚拟机下载及安装

    一.VMware虚拟机介绍 VMWare虚拟机软件是一个"虚拟PC"软件,它使你可以在一台机器上同时运行二个或更多Windows.DOS.LINUX系统.与"多启动&qu ...