美文网首页
浏览器兼容的相关问题

浏览器兼容的相关问题

作者: 草鞋弟 | 来源:发表于2017-03-12 16:46 被阅读0次

1、什么是 CSS hack?

由于不同厂商的流览器或某浏览器的不同版本(如IE6-IE11,Firefox/Safari/Opera/Chrome等),对CSS的支持、解析不一样,导致在不同浏览器的环境中呈现出不一致的页面展现效果。这时,我们为了获得统一的页面效果,就需要针对不同的浏览器或不同版本写特定的CSS样式,我们把这个针对不同的浏览器/不同版本写相应的CSS code的过程,叫做CSS hack!

  • hack的原理
    由于不同的浏览器和浏览器各版本对CSS的支持及解析结果不一样,以及CSS优先级对浏览器展现效果的影响,我们可以据此针对不同的浏览器情景来应用不同的CSS。

2、谈一谈浏览器兼容的思路?

  • 1.从产品的角度(产品的受众、受众的浏览器比例、效果优先还是基本功能优先)
  • 2.成本的角度 (有无必要做某件事)
  • 3.做到什么程度让哪些浏览器支持哪些效果
  • 4.根据兼容需求选择技术框架/库(jquery)
  • 5.根据兼容需求选择兼容工具(html5shiv.jsrespond.jscss resetnormalize.cssModernizr)
    postCSS
    -6.条件注释、CSS Hack、js 能力检测做一些修补

3、列举5种以上浏览器兼容的写法

  • *,ie6,ie7可以识别;
  • _和- , ie6可以识别;
  • !important ,表示高优先级,ie7及以上,firefox都支持,ie6认识带!important的样式属性,但- - 不认识!important的优先级;
  • -webkit- ,针对safari,chrome浏览器的内核CSS写法
  • -moz-,针对firefox浏览器的内核CSS写法
  • -ms-,针对ie内核的CSS写法
  • -o-,针对Opera内核的CSS写法

4、以下工具/名词是做什么的

  • 条件注释
    条件注释 是于HTML源码中被 IE 有条件解释的语句。条件注释可被用来向 IE提供及隐藏代码。 条件注释最初于微软的 Internet Explorer 5浏览器中出现,并且直至 Internet Explorer 9 均支持。微软已宣布于IE10停止支持。

  • IE Hack
    针对IE浏览器编写不同的CSS的让IE能够正常渲染的过程

  • js 能力检测
    浏览器的能力检测目标不是检测特定的浏览器,而是检测浏览器的能力。这样,只需要检测浏览器是否支持特定的能力,就可以给出特定的解决方案。这一部分检测是解决浏览器兼容问题的主要检测。

  • html5shiv.js
    用于解决IE9以下版本浏览器对HTML5新增标签不识别,并导致CSS不起作用的问题。所以我们在使用过程中,想要让低版本的浏览器,即IE9以下的浏览器支持,那么这款html5shiv.js是一个非常好的选择!

  • respond.js
    Respond.js 是一个小脚本,用于为 IE6-8 以及其它不支持 CSS3 媒体查询功能的浏览器提供媒体查询的 min-width 和 max-width 特性,实现响应式网页设计。

  • css reset
    将浏览器的默认样式全部去掉,更准确说就是通过重新定义标签样式。“覆盖”浏览器的CSS默认属性。最最简单的说法就是把浏览器提供的默认样式覆盖掉!这就是CSS reset。

  • normalize.css
    Normalize.css 是一个可以定制的CSS文件,它让不同的浏览器在渲染网页元素的时候形式更统一。
    它可以:

    • 保留有用的默认值,不同于许多 CSS reset 的简单粗暴。
    • 标准化的样式,适用范围广的元素。
    • 纠正错误和常见的浏览器的不一致性。
    • 一些细微的改进,提高了易用性。
      -使用详细的注释来解释代码。
  • Modernizr
    Modernizr 使你可以方便地为各种情况编写 JavaScript 和 CSS,无论浏览器是否支持这些特性。这是处理渐进增强的完美方案。
    Modernizr 会在页面加载后立即检测特性;然后创建一个包含检测结果的 JavaScript 对象,同时在 html 元素加入方便你调整 CSS 的 class 名。

  • postCSS
    它可以被理解为一个平台,可以让一些插件在其中运行,它提供了一个解析器,可以将CSS解析成抽象语法树,通过PostCSS这个平台,我们能够开发一些插件,来处理CSS。热门插件如autoprefixer,它可以帮我们处理兼容问题,只需正常写CSS,autoprefixer可以帮我的自动生成兼容性代码。

5、一般在那个网站查询属性的兼容性?

可以在此处进行检测

相关文章

  • 浏览器兼容相关问题

    1.Google Chrome不支持小于12px的字体,可能是因为怕字体太小了,看不到。IE和Firefox就没有...

  • 浏览器兼容相关问题

    1、什么是 CSS hack 由于不同厂商的浏览器,比如Internet Explorer,Safari,Mozi...

  • 浏览器兼容的相关问题

    1、什么是 CSS hack? 由于不同厂商的流览器或某浏览器的不同版本(如IE6-IE11,Firefox/Sa...

  • 浏览器常见的兼容问题

    什么是浏览器的兼容问题 浏览器的兼容性问题也就是网页的兼容性或者网站兼容性问题, 指网页在各种浏览器上的cs...

  • 常见浏览器兼容问题及解决

    一、什么是浏览器兼容问题所谓浏览器兼容问题就是指不同浏览器或同种浏览器不同版本对相同代码解析效果不同,浏览器兼容问...

  • 浏览器兼容

    什么是浏览器兼容问题 为什么会有浏览器兼容问题 用到的网站 处理兼容问题的思路 渐进增强和优雅降级 stackov...

  • 浏览器兼容性

    一、什么是浏览器兼容性 浏览器兼容性问题又被称为网页兼容性或网站兼容性问题,指网页在各种浏览器上的显示效果可能不一...

  • 前端基础05——浏览器兼容

    1.浏览器兼容问题 浏览器与前端技术的发展不匹配 不同浏览器参考的标准、实现的方式不同 2.相关参考资料 浏览器市...

  • 浏览器兼容性

    什么是浏览器的兼容性 浏览器兼容性问题又被称为网页兼容性或网站兼容性问题,指网页在各种浏览器上的显示效果可能不一致...

  • JS中常遇到的浏览器兼容问题和解决方法

    JS中常遇到的浏览器兼容问题和解决方法 event事件问题: DOM节点相关的问题,我直接封装了函数,以便随时可以...

网友评论

      本文标题:浏览器兼容的相关问题

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