1.兼容性问题
-
浏览器默认的margin和padding不同。解决方案是加一个全局的*{margin:0;padding:0;}来统一。
-
Chrome 中文界面下默认会将小于 12px 的文本强制按照 12px 显示, 可通过加入 CSS 属性 -webkit-text-size-adjust: none; 解决。
-
超链接访问过后hover样式就不出现了 被点击访问过的超链接样式不在具有hover和active了解决方法是改变CSS属性的排列顺序: L-V-H-A : a:link {} a:visited {} a:hover {} a:active {}
-
iOS img为空的时候,显示为一个框 解决方案
img[src=''],img:not([src]){ opacity: 0;}
2.一些常见问题
-
如何让overflow:scroll 平滑滚动?
-webkit-overflow-scrolling: touch;
-
常用判断某个对象之属于哪种内置类型
Object.property.tostring.call() ,但此方法建立在toString()方法 未被修改的情况下
instanceof
- Ajax 解决浏览器缓存问题
1、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("If-Modified-Since","0")。
2、在ajax发送请求前加上 anyAjaxObj.setRequestHeader("Cache-Control","no-cache")。
3、在URL后面加上一个随机数: "fresh=" + Math.random();。
4、在URL后面加上时间戳:"nowtime=" + new Date().getTime();。
5、如果是使用jQuery,直接这样就可以了 $.ajaxSetup({cache:false})。
- 长时间按住页面闪退
.element { -webkit-touch-callout: none; }
- IOS input 修改背景色无效
取消input默认颜色 -webkit-appearance:none;
- IOS canvas.toDataURL 无效
设置 crossOrigin属性必须在src属性之前赋值