关于网站开发中浏览器兼容性问题

  网站开发中,对于前端工程师而言,网站样式的兼容性往往很让人头疼,特别是在本国国情的情况下,IE6的不死以及各家IT公司的浏览器兼容性存在差异的情况下,让网站开发在浏览器兼容性方面摔了大跟头。

  开发人员往往会看到一些比较好的值得我们借鉴的国外网站,但是一拿到本地,各种浏览器的不兼容,迫使我们放弃这些华丽的好站。今天我来给大家解析下市场的各种浏览器以及我们在网站开发当中值得注意的地方。

  先说主浏览器,目前国内主浏览器依旧以IE为主,那么IE6、7、8其实依然占了不小的份额,特别是对于一些制造型企业,往往使用的都是Win XP,然后XP系列操作系统默认安装的其实就是IE6。所以我们还是不应该放弃这些用户,而且导致IE6浏览器的不兼容,其实还是跟自己写样式有很大的原因的,下面我会详细解说这块。除了IE家族,Google Chrome浏览器目前市场份额是越来越大,或许Chrome浏览器大家还是比较陌生,但是只要我说出“360浏览器-急速模式”、“搜狗浏览器-急速模式”....各种浏览器的急速模式其实都是Chrome的内核-WebKit,该浏览器的内核有几大优点,第一就是速度快,其次是兼容目前各种主流的HTML5和CSS3。还有一个浏览器大家应该也不陌生:FireFox-火狐。该浏览器目前国内占额可以排在国内前5的位置,原因在于,该浏览器同样和Chrome浏览器一样,具有超强的兼容性,支持各种HTML5和CSS3效果,并且与别的浏览器不同的是,该浏览器目前还有一个插件库,里面包含了各种各样的实用插件。FireBug对于开发者而言一定不默认,他就是大名鼎鼎的源代码解析插件。所以对于开发者而言FireBug肯定是少不了的。如果作为一个前端开发者,没有安装FireBug,那么可以认为该工程师要么就是超级NB了,不用工具可以看出任何网站的问题,那么就是完全不懂,也不知道如何查找网站样式的问题所在。

  我们再看看其他一些第三方的浏览器,所谓第三方浏览器,我们这里指的是例如:360安全浏览器、搜狗浏览器、遨游浏览器等等,目前一般都采用双内核浏览器,也就是急速模式的WebKit和IE家族的兼容模式。这些浏览器无非就是在其他内核的基础上添加一些比较实用的功能,例如近年发展起来的“云”功能。

  再回到开发者角度谈下浏览器兼容性问题,在我看来导致浏览器不兼容的问题,无非就是2点:

  1、先天缺陷:所谓先天缺陷就是某些标签、样式本身就存在不兼容,例如我们再写DIV透明的时候,那么IE6解析与其他浏览器本身确实就不相同;或者是PNG图片在IE不兼容,那么这种问题应该说是“真正的不兼容”。

  2、人为技术性的不兼容:这种问题其实不用说,如果完全按照W3C的标准去写样式,那么其实导致样式不兼容的可能是非常非常低的。我一直希望前端开发者应该多用用心,去看些比较大的电商平台,看看他们是如何来写样式的,还有这里分享个小技巧:用色块来布局以及多使用FireBug,可以杜绝大部分的不兼容问题。

  本文来自昆山网络公司www.boooming.net

时间: 2024-11-05 21:47:39

关于网站开发中浏览器兼容性问题的相关文章

PHP网站开发中常用的8个小技巧

 这篇文章主要介绍了PHP网站开发中常用的8个小技巧,本文讲解了命名.使用.PHP判断Form表单是否提交.PHP 获取字符串长度.PHP超全局对象等内容,需要的朋友可以参考下     PHP是一种用于创建动态WEB页面的服务端脚本语言.如同ASP和ColdFusion,用户可以混合使用PHP和HTML编写WEB页面,当访 问者浏览到该页面时,服务端会首先对页面中的PHP命令进行处理,然后把处理后的结果连同HTML内容一起传送到访问端的浏览器.但是与ASP或 ColdFusion不同,PHP是一

网站开发中, php所扮演的角色,以及与其他语言,工具或库的关系,这个问题很重要

问题描述 网站开发中, php所扮演的角色,以及与其他语言,工具或库的关系,这个问题很重要 网站开发中, php所扮演的角色,以及与其他语言,工具或库的关系,这个问题很重要 解决方案 php是一种web脚本语言,它主要用来编写应用层.web应用层需要iis或者apache这样的web服务器去执行.只使用php其实也可以开发一个完整的服务器端程序了.如果你希望一部分业务放在客户端执行,那么需要用js脚本.如果你希望调用一些别的语言的库,或者出于性能的优化,可以用C++写dll,用php模块加载.

新手入门:PHP网站开发中常见问题汇总

PHP网站开发 动态网页制作PHP PHP教程 PHP技巧 PHP网站开发常见问题 [1]页面之间无法传递变量 get,post,session在最新的php版本中自动全局变量是关闭的,所以要从上一页面取得提交过来得变量要使用$_GET['foo'],$_POST['foo'],$_SESSION['foo']来得到 当然也可以修改自动全局变量为开(php.ini改为register_globals = On):考虑到兼容性,还是强迫自己熟悉新的写法比较好. [2]Win32下apache2 用

PHP网站开发中常用的8个小技巧_php实例

PHP是一种用于创建动态WEB页面的服务端脚本语言.如同ASP和ColdFusion,用户可以混合使用PHP和HTML编写WEB页面,当访 问者浏览到该页面时,服务端会首先对页面中的PHP命令进行处理,然后把处理后的结果连同HTML内容一起传送到访问端的浏览器.但是与ASP或 ColdFusion不同,PHP是一种源代码开放程序,拥有很好的跨平台兼容性.用户可以在Windows NT系统以及许多版本的Unix系统上运行PHP,而且可以将PHP作为Apache服务器的内置模块或CGI程序运行. 本

PHP网站开发中与AJAX的结合

AJAX无疑是2005年炒的最热的Web开发技术之一,当然,这个功劳离不开Google.我只是一个普通开发者,使用AJAX的地方不是特别多,我就简单的把我使用的心得说一下.(本文假设用户已经具有JavaScript.HTML.CSS等基本的Web开发能力) [AJAX介绍] Ajax是使用客户端脚本与Web服务器交换数据的Web应用开发方法.Web页面不用打断交互流程进行重新加裁,就可以动态地更新.使用Ajax,用户可以创建接近本地桌面应用的直接.高可用.更丰富.更动态的Web用户界面. 异步J

B/S网站开发中缓存应用

关于中大型开发b/s开发中的缓存(cache),我的一些看法,有不正确的或者是有笔误的地方,请指正.thanks 首先,应该了解基本的,对于缓存的知识: Q:如:静态缓存和动态缓存的区别?缓存是什么? A:缓存,在某个方面简单的说,就是无需与数据库再次交互. 静态缓存: 即所说的html,shtml文件. 动态缓存:即所说的把缓存存于服务器的内存中,需要时调用. 他们的区别在哪呢? 静态缓存不用占用负载(服务器的内存),但需要占用服务器的空间(因为生成很多文件),最重要的,是因为生成了静态的缓存

B/S开发中浏览器的工具利器

B/S系统的前端浏览器性能和标准兼容方面是开发中的一个重要问题,把IE中使用的各种工具整理一下,对于开发中标准.规范检查等起到一个作用   主要是三个主流的浏览器和相关的插件 FireFox Firefox-latest.exe firebug-1.7.3-fx.xpi yslow-3.0.3-fx.xpi 安装Firefox后,把以上的插件拖到Firefox中即可 Firebug: 查看网络流量.DOM元素.JavaScript.CSS等 YSlow: 统计标准和性能等各个方面 启动方法:工具

你真的了解网站开发中的 GZIP 吗?

gzip是GNUzip的缩写,最早用于UNIX系统的文件压缩.HTTP协议上的gzip编码是一种用来改进web应用程序性能的技术,web服务器和客户端(浏览器)必须共同支持gzip.目前主流的浏览器,Chrome,firefox,IE等都支持该协议.常见的服务器如Apache,Nginx,IIS同样支持gzip.gzip压缩比率在3到10倍左右,可以大大节省服务器的网络带宽.而在实际应用中,并不是对所有文件进行压缩,通常只是压缩静态文件. 那么客户端和服务器之间是如何通信来支持gzip的呢?通过

实例讲解PHP网站开发中Session的使用方法

  PHP会话即SESSION是指用户从进入网站到关闭网站这段时间内活动的一种机制,它提供了所有网页都共同使用的公共变量存贮机制.那么SESSION到底有什么用处呢?网上购物时大家都用过购物车,你可以随时把你选购的商品加入到购物车中,最后再去收银台结帐.在整个过程中购物车一直扮演着临时存贮被选商品的角色,用它追踪用户在网站上的活动情况,这就是SESSION的作用.    SESSION的发明填补了HTTP协议的局限,HTTP协议被认为是无状态协议,当它在服务端完成响应之后,服务器就失去了与该浏览