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

在那个 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. Superset 筛选器理解

    免于被筛选器筛选,dashboard中,编辑,高级,"__time_range": {"scope": ["ROOT_ID"], " ...

  2. 『Python底层原理』--CPython如何编译代码

    前一篇我们介绍了CPython VM的运行机制,它基于一系列字节码指令来实现程序逻辑. 不过,Python字节码在完整描述代码功能上存在局限性,于是代码对象应运而生.像模块.函数这类代码块的执行,本质 ...

  3. Win10安装MySql步骤

    1.下载 下载地址:https://dev.mysql.com/downloads/mysql/ 文件地址:https://dev.mysql.com/get/Downloads/MySQL-8.3/ ...

  4. 前端视角看 HTTPS

    最近用Docusaurus搭了一个个人网站,部署后看到浏览器地址栏上"不安全"三个字感觉特别辣眼,便不由自主的想起了HTTPS.回忆起自己在日常开发中遇到的一些与HTTPS相关的知 ...

  5. [SDOI2016] 数字配对 题解

    发现题目中描述的配对条件可以理解为:\(pc_i-pc_j=1\) 且 \(a_i\bmod a_j=0\),其中 \(pc_i\) 表示 \(a_i\) 的质因数个数. 自然想到以 \(pc\) 奇 ...

  6. Typecho如何去掉/隐藏index.php

    Typecho后台设置永久链接后,会在域名后加上index.php,很多人都接受不了.例如如下网址:https://www.jichun29.cn/index.php/archives/37/,但我们 ...

  7. 2024从国庆到CSP前总结

    前言 这是一篇迟来的总结,不过可能也不算太迟. 正文 截至起稿时间(2024.10.23),这个月已经讲了四次课,考了五场试.内容基本全是基于前一段时间的内容进行提升,对我而言很有帮助.我也意识到自己 ...

  8. python实现批量自动访问站点URL并获取内容,自动模拟打开电脑端及移动端URL访问站点,打开URL页面获取页面内容

    问题描述:假设目前有多个网站URL,需要检查各站点keyword,description是否正常设置,如果人工逐个打开URL访问比较耗时,故采用python模拟电脑端和移动端自动打开网站URL访问,并 ...

  9. Java DecimalFormat四舍五入的坑及正确用法

    一.DecimalFormat四舍五入的坑 1.1 有时候我们在处理小数保留几位小数时,想到了DecimalFormat这个类的使用,百度搜一把可能用到以下方式. 1 public static vo ...

  10. 解决 Ubuntu 22.04 下 flameshot 截图工具无法使用的问题

    问题描述 flameshot 是 Linux 端广受好评的一款截图工具,但在 Ubuntu 22.04 中,安装完成后却不能使用,表现为截图命令无响应,或截图过程报错. 通过查阅 flameshot ...