美文网首页
浏览器的兼容性

浏览器的兼容性

作者: 简人CC | 来源:发表于2017-09-15 13:29 被阅读0次

    * 什么是 CSS hack

    css hack由于不同浏览器厂商或者不同浏览器的不同版本,如IE6.IE7,对css解析完成不同,因此会导致页面的效果不一样,得不到我们想要的页面效果,这个时候就需要针对不同的浏览器写不同的CSS Hack来达到我们想要的效果。总之,Css Hack的目的就是是你的Css代码兼容不同的浏览器。反之,也就是利用了不同浏览器的Css Hack来写对应css效果。

    * 谈一谈浏览器兼容的思路

    1.可以从网站面向的群体来考虑:
    * 如果面向的是银行 政府 传统企业 这类就需要考虑兼容方面的问题。
    * 如果面型是电子商务,青少年社交网站等年轻群体就一开始构建完整的功能,然后再针对低版本浏览器优雅降级

    2.浏览器所占的市场比重:
    * 如果一个浏览器市场份额很少,就不太需要关心兼容方面的问题.

    3.页面是以效果优先还是以基本功能优先
    * 如果是以效果优先就一开始构建完成的功能,然后再针对低版本浏览器优雅降低
    * 如果是以基本功能优先: 那就针对低版本浏览器进行页面构建,保证基本功能,然后在对新版本浏览器进行效果 交互 等改进和追加功能以达到更好的用户体验.

    做到什么程度:
    让浏览器支持哪些功能和效果
    如何做

    • 根据兼容需求选择技术框架和库(jQuery)
    • 根据兼容需求选择兼容工具(html5shiv.js .respond.js .css reset.normalze.css.Modernizr)
    • 条件注释. css Hack .js能力检测 做进一步修补.

    * 浏览器兼容的写法

    browserhacks

    • html{}会被IE6识别
      +htmlP{}会被IE7识别
      html{color:red\9}IE6~8识别
      -webkit-text-shadow{}浏览器私有前缀

    * 条件注释

    不会被浏览器解析的。添加注释添加可读性

    * IE Hack

    IE不同版本对css解析不同,针对不同版本写不同的Css Hack来达到想要的页面效果

    * js 能力检测

    * html5shiv.js

    IE9之前的版本几乎不支持HTML5与Css3新特性。html5shiv.js可以允许IE9之前的版本识别HTML5标记,使用Css样式.

    * respond.js

    主要针对低版本浏览器对媒体查询的实现.

    * css reset

    主要就是早期的浏览器对css的理解不同,造成渲染效果不同。css reset修改了css的默认样式来尽量达到渲染效果一致

    * normalize.css

    基于css reset. 觉得css reset 太简单粗暴了,不应该把css的所有默认样式都清除。

    推崇的思想每个元素都有其存在的意义,简单粗暴的一视同仁并不好。尽少的修改.
    优点:
    * 保护有用的浏览器默认样式
    * 一般化的格式
    * 修复浏览器自身的Bug
    * 优化css可用性
    * 代码解释

    * Modernizr

    主要来检测 浏览器对一些新的属性是否支持

    * postCSS.

    胜于less和sass的Postcss,还支持模块化,以及灵活的构建进程。

    PostCss提供一个css解析器和创建可以分析 测试 处理资源 优化 创建回调。和传输给其他解析css
    框架的插件的宽框架。具体详解->PostCss

    * 一般在哪个网站查询属性兼容性?

    can i use

    相关文章

      网友评论

          本文标题:浏览器的兼容性

          本文链接:https://www.haomeiwen.com/subject/qrmssxtx.html