您现在的位置是:网站首页> 编程资料编程资料
常见的浏览器兼容性问题(小结)浅谈遇到的几个浏览器兼容性问题base64图片在各种浏览器的兼容性处理 对常见的css属性进行浏览器兼容性总结(推荐)CSS浏览器兼容性常见问题总结大全(推荐)避免不必要的浏览器兼容性问题的5个技巧详解CSS3浏览器兼容浅谈浏览器的兼容性(必看篇)详解IE浏览器的haslayout属性及相关兼容性问题解决浏览器hack总结 详细的浏览器兼容性的快速解决方法HTML5的video标签的浏览器兼容性增强方案分享
2023-10-18
245人已围观
简介 这篇文章主要介绍了常见的浏览器兼容性问题(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
浏览器的兼容性无非还是样式兼容性(css),交互兼容性(javascript),浏览器 hack 三个方面。
样式兼容性(css)方面

(1) 因为历史原因,不同的浏览器样式存在差异,可以通过 Normalize.css 抹平差异,也可以定制自己的 reset.css,例如通过通配符选择器,全局重置样式。
* { margin: 0; padding: 0; }(2)在CSS3还没有成为真正的标准时,浏览器厂商就开始支持这些属性的使用了。CSS3样式语法还存在波动时,浏览器厂商提供了针对浏览器的前缀,直到现在还是有部分的属性需要加上浏览器前缀。在开发过程中我们一般通过IDE开发插件、css 预处理器以及前端自动化构建工程帮我们处理。
浏览器内核与前缀的对应关系如下
| 主要代表的浏览器 | 内核 | 前缀 |
|---|---|---|
| IE浏览器 | Trident | -ms |
| Firefox | Gecko | -moz |
| Opera | Presto | -o |
| Chrome和Safari | Webkit | -webkit |
交互兼容性(javascript)

(1)事件兼容的问题,我们通常需要会封装一个适配器的方法,过滤事件句柄绑定、移除、冒泡阻止以及默认事件行为处理
var helper = {} //绑定事件 helper.on = function(target, type, handler) { if(target.addEventListener) { target.addEventListener(type, handler, false); } else { target.attachEvent("on" + type, function(event) { return handler.call(target, event); }, false); } }; //取消事件监听 helper.remove = function(target, type, handler) { if(target.removeEventListener) { target.removeEventListener(type, handler); } else { target.detachEvent("on" + type, function(event) { return handler.call(target, event); }, true); } };(2)new Date()构造函数使用,‘2019-12-09’是无法被各个浏览器中,使用new Date(str)来正确生成日期对象的。 正确的用法是’2019/12/09’.
(3)获取 scrollTop 通过 document.documentElement.scrollTop 兼容非chrome浏览器
var scrollTop = document.documentElement.scrollTop||document.body.scrollTop;
浏览器 hack

(1)快速判断 IE 浏览器版本
(2)判断是否是 Safari 浏览器
/* Safari */ var isSafari = /a/.__proto__=='//';
(3)判断是否是 Chrome 浏览器
/* Chrome */ var isChrome = Boolean(window.chrome);
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
相关内容
- CSS3关于z-index不生效问题的解决css之Display、Visibility、Opacity、rgba和z-index: -1的区别解决CSS中子元素z-index与父元素兄弟节点的层级问题css 层叠与z-index的示例代码z-index为负值的元素无法点击到的解决方法CSS z-index 层级关系优先级的概念css z-index层重叠顺序使用介绍css中z-index: 0和z-index: auto的区别
- css常用样式font设置字体的多种变换(实例详解)css动画效果之animation的常用样式浅谈html5标签css3的常用样式css 常用样式(分享)20个CSS/CSS3常用样式汇总CSS常用样式简单的总结包括定位、显示等属性CSS常用样式之绘制双箭头的示例代码
- css实现div内凹角样式的示例代码CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- 史上最坑爹的游戏2 第23关 图文攻略_手机游戏_游戏攻略_
- 史上最坑爹的游戏2 第24关 图文攻略_手机游戏_游戏攻略_
- 部落守卫战 第2-1关 通关视频攻略_手机游戏_游戏攻略_
- 部落守卫战 第3-1关 通关视频攻略_手机游戏_游戏攻略_
- 部落守卫战 第4-1关 通关视频攻略 _手机游戏_游戏攻略_
- 部落守卫战 第5-1关 通关视频攻略_手机游戏_游戏攻略_
- 部落守卫战 第6-1关 通关视频攻略_手机游戏_游戏攻略_
