首页 > 前端开发 > 正文

web前端开发浏览器兼容 前端开发ie浏览器的兼容问题怎么解决?

2023-10-09 07:11:58 | 我爱编程网

最近经常有小伙伴私信询问web前端开发浏览器兼容 前端开发ie浏览器的兼容问题怎么解决?相关的问题,今天,我爱编程网小编整理了以下内容,希望可以对大家有所帮助。

web前端开发浏览器兼容 前端开发ie浏览器的兼容问题怎么解决?

web浏览器兼容

什么是浏览器兼容?

在我们的实际开发中会涉及到在多个浏览器比如

firefox,opera,chrome,或者IE的多个版本下进行调试,在不同版本浏览器下会出现显示效果不一的情况,而浏览器兼容就是为了处理这种情况。

浏览器最重要核心的部分是“ 浏览器内核 ”,负责对网页语法的解释(如标准通用标记语言下的一个应用HTML、JavaScript)并渲染(显示)网页。 所以,通常所谓的浏览器内核也就是浏览器所采用的渲染引擎,渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息。不同的浏览器内核对网页编写语法的解释也有不同,因此同一网页在不同的内核的浏览器里的渲染(显示)效果也可能不同,这也是网页编写者需要在不同内核的浏览器中测试网页显示效果的原因。

主要浏览器内核有哪些?

1、Trident内核代表产品Internet Explorer

2、Gecko内核代表产品Firefox

3、WebKit内核代表作品Safari    主要用于 Mac OS 系统

4、Presto内核代表作品Opera

5、Blink由Google和Opera Software开发的浏览器排版引擎

1.因为历史原因,不同的浏览器样式存在差异,可以通过 Normalize.css 抹平差异,也可以定制自己的 reset.css,例如通过 通配符 选择器,全局重置样式

2.在CSS3还没有成为真正的标准时,浏览器厂商就开始支持这些属性的使用了。CSS3样式语法还存在波动时,浏览器厂商提供了针对浏览器的前缀,直到现在还是有部分的属性需要加上浏览器前缀。在开发过程中我们一般通过IDE开发插件、css 预处理器以及前端自动化构建工程帮我们处理。

3.在还原设计稿的时候我们常常会需要用到透明属性,所以解决 IE9 以下浏览器不能使用 opacit。

1.事件兼容的问题,我们通常需要会封装一个 适配器 的方法,过滤事件句柄绑定、移除、冒泡阻止以及默认事件行为处理

2.new Date() 构造函数 使用,'2018-07-05'是无法被各个浏览器中,使用new Date(str)来正确生成日期对象的。 正确的用法是'2018/07/05'.

3获取 scrollTop 通过 document.documentElement.scrollTop 兼容非 chrome浏览器

1.快速判断 IE 浏览器版本

<!--[if IE 8]> ie8 <![endif]-->

2.判断是否是 Safari 浏览器

/* Safari */

var isSafari = /a/.__proto__=='//';

3.判断是否是 Chrome 浏览器

/* Chrome */

var isChrome = Boolean(window.chrome);

web前端开发浏览器兼容 前端开发ie浏览器的兼容问题怎么解决?

前端开发ie浏览器的兼容问题怎么解决?

所谓的浏览器兼容性问题,是指因为不同的浏览器对同一段代码有不同的解析,造成页面显示效果不统一的情况。在大多数情况下,我们的需求是,无论用户用什么

浏览器来查看我们的网站或者登陆我们的系统,都应该是统一的显示效果。所以浏览器的兼容性问题是前端开发人员经常会碰到和必须要解决的问题。

在学习浏览器兼容性之前,我想把前端开发人员划分为两类:

第一类是精确按照设计图开发的前端开发人员,可以说是精确到1px的,他们很容易就会发现设计图的不足,并且在很少的情况下会碰到浏览器的兼容性问题,而这些问题往往都是浏览器的bug,并且他们制作的页面后期易维护,代码重用问题少,可以说是比较牢固放心的代码。

第二类是基本按照设计图来开发的前端开发人员,很多细枝末节差距很大,不如间距,行高,图片位置等等经常会差几px。某种效果的实现也是反复调试得到,具体为什么出现这种效果还模模糊糊,整体布局十分脆弱。稍有改动就乱七八糟。代码为什么这么写还不知所以然。这类开发人员往往经常为兼容性问题所困。修改好了这个浏览器又乱了另一个浏览器。改来改去也毫无头绪。其实他们碰到的兼容性问题大部分不应该归咎于浏览器,而是他们的技术本身了。

web前端开发浏览器兼容 前端开发ie浏览器的兼容问题怎么解决?

如何进行Web网页的兼容性测试?

根据软件测试六大特性:我们了解兼容性测试属于“可移植”的一类特性,要想提升软件的用户体验,首先需要满足基于不同浏览器及不同的终端平台适配性,这样才能解决大部分用户体验问题。

Web浏览器类型分为:IE,FF,Chrome,360浏览器、遨游、搜狗、QQ、欧朋浏览器等等.

Web兼容性测试分类:硬件兼容性测试、软件兼容性测试、数据兼容性测试。

Web网页的兼容性平台分为:

1.PC端浏览器的兼容性。

2.APP端H5页面的兼容性测试。

一般产生兼容性问题的原因是什么?

首先:基于PC端也好,基于APP端浏览器或者H5页面也好,都是基于不同的开发语言开发出来的脚本,做成一系列的动态或者静态页面,从而通过与服务器进行资源交互,获取服务器资源,通过前端JS、CSS等脚本的渲染引擎机制来显示信息。

为什么有时候我们使用不同浏览器的打开页面,会存在兼容性的问题?

因为不同的浏览器使用的“内核”不同,而出现兼容性问题。咱们最常见的浏览器就有三种FF/Chrom/IE,这三款浏览器都是使用什么内核呢?

1.IE浏览器基于”Trident内核”

2.FF浏览器基于”Gecko内核”

3.Chrome浏览器基于“Blink内核”

4.国内双内核(360安全浏览器6.0+,搜狗浏览器5.0+,QQ浏览器7.0+,猎豹浏览器5.0+。

那怎么去测试兼容性问题?

1.基于IE浏览器兼容性测试可以使用IE自动切换浏览器版本的功能进行测试

2.基于Chrome与FF由于版本多样化,我们可以使用边界值的方法来覆盖测试

3.为了提升工作效率,我们可以借助自动化测试工具来完成一部分测试,或者通过安装虚拟机来完成兼容性测试。 我爱编程网

4.结合市场用户平台占用率分析,按用户排行榜来分析测试重点。

5.如果由于公司资源不足带来的问题,我们可以借助第三方平台进行测试,例如:云测、众测等平台。

6.关于专项浏览器工具不建议使用,为什么?因为工具是由第三方开发,工具本身存在BUG,所以尽量使用我讲解的以上方法来进行测试。

总结:因为不同的浏览器对同一段代码有不同的解析,造成页面显示效果不统一的情况,从而出现兼容性问题,当然除了内核不一样,我们可以发现不同的浏览器他们都有各自的特点,FF浏览器稳定性相对不及Chrome,IE浏览打开速度加载较慢,最受人欢迎的是“Chrome”浏览器,当然兼容性测试不能跟随我们的喜好而去测试,更应该站在用户的角度来分析思考问题,所以通过今天的学习,希望大家对兼容性测试出现的问题有一个全面的理解,同时能够应用到平时的工作中去。

兼容性测试bug案例分享:

以上就是我爱编程网小编整理的内容,想要了解更多相关资讯内容敬请关注我爱编程网。
与“web前端开发浏览器兼容 前端开发ie浏览器的兼容问题怎么解决?”相关推荐
web前端开发兼容性 Web前端中常见的浏览器兼容问题有哪些
web前端开发兼容性 Web前端中常见的浏览器兼容问题有哪些

什么是web前端开发?Web前端开发就是创建Web页面、或者APP等前端界面呈现给用户的过程,通过HTML、CSS及JavaS等衍生出来的各种技术、框架、解决方案,来实现互联网产品的用户界面交互。前端开发需要学习的技术有:1、掌握基本web前端开发技术:HTML、CSS、JavaScript、DOM、BOM、AJAX等,而且要了解它们在不同浏览器上的兼容情况、渲染原理和存在的Bug

2023-09-29 06:27:37
web前端开发的行高 Web前端中常见的浏览器兼容问题有哪些
web前端开发的行高 Web前端中常见的浏览器兼容问题有哪些

Web前端中常见的浏览器兼容问题有哪些使用Trident内核的浏览器:IE、Maxthon、TT;使用Gecko内核的浏览器:Netcape6及以上版本、FireFox;使用Presto内核的浏览器:Opera7及以上版本;使用Webkit内核的浏览器:Safari、Chrome。而我现在所说的兼容性问题,主要是说IE与几个主流浏览器如firefox,google等。而对IE浏览器来说

2023-09-27 20:31:36
前端web开发字体 web前端怎么使字体兼容其他浏览器
前端web开发字体 web前端怎么使字体兼容其他浏览器

web前端中引入的字体文件过大如何解决?要动态切换就做不到了。鱼和熊掌不能兼得。一般缩小网页字体文件的方法就是把用到的那几个字单独的提炼出来。就是用不到的字不要放在字体文件里。需要你自己做一个字体文件。因为以前有写过一个类似的工具,就是把字体中的字提炼出来。后来不干这个了,文件也没了。这是一个常用的工具,你在网上自己找一找应该能找到很多类似的开源项目。我当时用的方法是字库文件比如t

2023-09-03 07:52:38
web前端开发字体包如何使用 web前端怎么使字体兼容其他浏览器
web前端开发字体包如何使用 web前端怎么使字体兼容其他浏览器

使用JSFiddle(web前端开发网页编程器)怎么改字体颜色。这里有一个字体渲染实测结果截图展示。造成渲染区别的主要是以下几点(wiki:Fontrasterization):字体抗锯齿:Win7以上自动打开的ClearType(msdn)、常见于MacOS和MacType的次像素平滑(原理)、常用于Android和iOS等移动设备的灰度渲染Hinting技术/wiki对字重f

2023-10-11 11:00:19
web前端开发浏览器配置 web前端开进入浏览器怎么设置
web前端开发浏览器配置 web前端开进入浏览器怎么设置

web前端开进入浏览器怎么设置web前端开进入浏览器设置第一步就是和服务器建立连接send和rec之间。等待浏览器发送请求,拿到数据解析,http报文,返回给客户端知道了用户请求后,服务器在特定的目录中找到文件,read出来(文件操作),拿到数据,把数据组织成http返回报文,返回前端即可。详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)在用vue做前端开发

2023-10-14 11:19:53
web前端开发浏览器缓存 web 浏览器缓存 需要前端设置么
web前端开发浏览器缓存 web 浏览器缓存 需要前端设置么

web浏览器缓存需要前端设置么缓存的概念缓存这个东西真的是无处不在,有浏览器端的缓存,有服务器端的缓存,有代理服务器的缓存,有ASP.NET页面缓存,对象缓存。数据库也有缓存,等等。http中具有缓存功能的是浏览器缓存,以及缓存代理服务器。http缓存的是指:当Web请求抵达缓存时,如果本地有“已缓存的”副本,就可以从本地存储设备而不是从原始服务器中提取这个文档。缓存的好处

2023-10-12 09:34:35
web前端开发怎么实现跨域 详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)
web前端开发怎么实现跨域 详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)

前端跨域问题有哪些常用的解决方式自己搭一个小型服务器就可以了。或者webstorm和brackets都有自己集成的小型服务器,能解决跨域问题。还有一种方法,就是如果是chrome浏览器的话这里加上“--allow-file-access-from-files”也可以解决跨域问题前端跨域如何解决?什么是跨域?跨域是通俗的说是从一个域名去请求另一个域名的资源。比

2023-10-13 07:45:48
浏览器web前端开发 Web前端是干嘛的
浏览器web前端开发 Web前端是干嘛的

web前端开发主要学哪些?web前端开发主要学习以下内容:HTML:学习HTML标记语言,它是用于构建网页内容的基本语言。CSS:学习CSS(层叠样式表),用于样式和布局网页元素。JavaScript:学习JavaScript语言,它是一种高级编程语言,用于创建交互式网页和动态Web应用程序。响应式Web设计:学习如何创建可以适应不同

2023-09-27 09:46:13