曾经的pc端项目踩到的一些兼容性的坑及其解决方案
曾经公司pc端项目一直最低兼容到IE7,要求和chrome下浏览效果一致,真心坑坏了我和另外一个小伙伴(另一个小伙伴以前也没处理过兼容问题)。不过还好,在这里真心感谢鑫哥博客的详解,从底层原理讲到了具体该如何解决(虽然我们踩过的许多无厘头的坑里面也没有),但是还是想把鑫哥的博客推荐出来,毕竟互联网时代的技术是共享的,张鑫旭: http://www.zhangxinxu.com/,国内js大牛也许没有公认的最厉害的,但是鑫哥在我们小伙伴的眼里css基本上是NO1
废话就不说那莫多了,本来打算在一篇博客里把情况及解决方案集中列一下的,但是仔细研究下鑫哥的博客,这样只会导致为了解决问题而解决问题的情况出现,可能换一个标签这个方法就不同用了,因此决定后面按类来划分,具体详细的细节点可以查看鑫哥的博客,我也会追加上具体的点的博客地址作为补充,希望鑫哥不会告我侵权(haha)。
出来具体的解决方案之前,想絮叨几句,这是最后出来的经验:
1.如果是自己纯手写不引入框架的话,尽量遵循w3c的规范来写,这样可以极大降低兼容性问题出现的可能及各种奇葩问题,包括样式名的定义及书写顺序和标签嵌套也要按照规范来
2.提前和产品经理及运营沟通好,是否需要做低版本的ie处理,受众群体的浏览器使用情况,吐过需要处理的话,尽量少用H5的新标签和css3的属性,老老实实使用类名选择元素还是比较靠谱的,不需要的话也要做好部分css样式的处理,在移动端android上兼容有时候也会出问题,如响应式布局,后面会详解。
3.自己练手的项目不建议使用框架,但是公司项目尽量使用框架,如bootstrap,pc端即使需求人员不提自己也要做好适配处理,另外兼容问题可以极大缩少
话说现在鹅厂已经不再考虑ie8了,咱们前端也快该放弃他了,哈哈,希望这天早点到来,但是现阶段是否需要考虑还是得看具体的受众,坑坑的xp系统还有人在用。
另外移动端的适配,兼容,SPA应用会逐一记录(我用的也不是太深,才从头真正做过两个SPA的项目重构,希望勿喷)
曾经的pc端项目踩到的一些兼容性的坑及其解决方案的更多相关文章
- 移动端与pc端的区别 及 ios的 兼容性问题
前言:这里移动端主要指 hybrid app 中的H5页面.app 中对页面 样式和功能 的需求会更精细一点. 1.适配: 手机端的尺寸多样,3.5英寸的 iPhone4应该是最小的,只要考虑 兼容到 ...
- pc端的企业网站(IT修真院test9)详解一个响应式完成的pc端项目
一:引入bootstrap框架 昨天一直被bootstrap栅格系统折磨. why? 我本来想一边码字,一边学习栅格布局的.but不成功.这时我头脑已经昏了. 下午,我查看了bootstrap的官网, ...
- react 开发 PC 端项目(一)项目环境搭建 及 处理 IE8 兼容问题
步骤一:项目环境搭建 首先,你不应该使用 React v15 或更高版本.使用仍然支持 IE8 的 React v0.14 即可. 技术选型: 1.react@0.14 2.bootstrap3 3. ...
- vue PC端项目中解决userinfo问题
在vue2 中用脚手架建立的项目,后端提供接口获取数据.在公司做第一个项目的时候不清楚公司里的对接流程,结果后续代码被一个接口整的乱七八糟,这个接口是获取用户信息的接口——'usre/info'. 如 ...
- 【angularjs】使用angular搭建PC端项目,开关按钮
方法一(使用指令) 1.指令(angular-ui-switch.js) angular.module('uiSwitch', []) app.directive('switch', function ...
- vue-cli 移动端项目如何在手机上调试预览
这里分享下如何在webpack工具构建下的vue项目,在手机端调试和预览,言归正传. 1.电脑和手机连接到同一个WIFI a.台式电脑和手机同时链接一个路由器,使用同一个wifi: b.笔记本也可以直 ...
- 前端:移动端和PC端的区别
在阿里的几次面试中,总是被问到移动端和PC端有什么区别,当时回答的时候主要是回答了在兼容性.网速.适配.页面布局等方面的不同,但是还是很不系统,所以这里做一个总结. 第一: PC考虑的是浏览器的兼容性 ...
- 移动端和PC端有什么区别
1.PC考虑的是浏览器的兼容性,而移动端开发考虑的更多的是手机兼容性,因为目前不管是android手机还是ios手机,一般浏览器使用的都是webkit内核,所以说做移动端开发,更多考虑的应该是手机分辨 ...
- 简述移动端与PC端的区别
1.移动端与PC端的区别 PC考虑的是浏览器的兼容性,而移动端开发考虑的更多的是手机兼容性,因为目前不管是android手机还是ios手机,一般浏览器使用的都是webkit内核,所以说做移动端开发,更 ...
随机推荐
- 程序员的自我修养(2)——计算机网络(转) good
相关文章:程序员的自我修养——操作系统篇 几乎所有的计算机程序,都会牵涉到网络通信.因此,了解计算机基础网络知识,对每一个程序员来说都是异常重要的. 本文在介绍一些基础网络知识的同时,给出了一些高质量 ...
- 泛型编程、STL的概念、STL模板思想及其六大组件的关系,以及泛型编程(GP)、STL、面向对象编程(OOP)、C++之间的关系
2013-08-11 10:46:39 介绍STL模板的书,有两本比较经典: 一本是<Generic Programming and the STL>,中文翻译为<泛型编程与STL& ...
- 查询json数据结构的8种方式
查询json数据结构的8种方式 你有没有对“在复杂的JSON数据结构中查找匹配内容”而烦恼.这里有8种不同的方式可以做到: JsonSQL JsonSQL实现了使用SQL select语句在json数 ...
- js模仿jquery里的几个方法next, pre, nextAll, preAll
/*siblings函数, 选取node的所有兄弟节点*/ function siblings(node){ if(node.nodeType === 1){ node.flag = true; // ...
- BZOJ3280: 小R的烦恼
题解: 随便建一下图费用流就可以过吧... 代码: #include<cstdio> #include<cstdlib> #include<cmath> #incl ...
- UVA 1324 The Largest Clique 最大团(强连通分量,变形)
题意:给一个有向图,要求找出一些点,使得这些点中的任意点对,要么可以互通,要么单向可达. 思路:最低只要求单向可达即可,即a->b都可以算进去. 强连通分量内的点肯定是满足要求的,可以全选,但是 ...
- 微信公众平台开发—利用OAuth2.0获取微信用户基本信息
在借鉴前两篇获取微信用户基本信息的基础下,本人也总结整理了一些个人笔记:如何通过OAuth2.0获取微信用户信息 1.首先在某微信平台下配置OAuth2.0授权回调页面: 2.通过appid构造url ...
- Swift不可变数组
Objective-C编写了2个不同的类来区分不可变数组(NSArray)和可变数组(NSMutableArray): Swift通过使用常量和变量来区分不可变数组和可变数组. 只要将数组定义为常量, ...
- linux下Qt问题cannot find -lGL collect2: error: ld returned 1 exit status
fedora下解决 yum groupinstall "Development Tools" yum install mesa-libGL-devel ubuntu下解决 sudo ...
- PC端使用opencv获取webcam,通过socket把Mat图像传输到android手机端
demo效果图: PC端 android端 大体流程 android端是服务器端,绑定IP和端口,监听来自PC端的连接, pc端通过socket与服务器andorid端传输图片. 主要代码 andro ...