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

浏览器兼容问题

作者: 头大如牛 | 来源:发表于2017-11-23 23:08 被阅读0次

什么是 CSS hack

CSS hack由于不同厂商的浏览器,比如Internet Explorer,Safari,Mozilla Firefox,Chrome等,或者是同一厂商的浏览器的不同版本,如IE6和IE7,对CSS的解析认识不完全一样,因此会导致生成的页面效果不一样,得不到我们所需要的页面效果。 这个时候我们就需要针对不同的浏览器去写不同的CSS,让它能够同时兼容不同的浏览器,能在不同的浏览器中也能得到我们想要的页面效果。

谈一谈浏览器兼容的思路

  • 渐进增强:先让低版本的浏览器要能够使用基本功能,再针对高版本的现代浏览器进行效果,交互等改进,追加更多功能达到更好的交互效果。
  • 优雅降级:一开始就构建完整的功能,再针对低版本的浏览器进行兼容。

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

#box{
   color:red;    ⁄* 所有浏览器都支持 *⁄ 
   color:red !important;   ⁄* Firefox、IE7支持 *⁄
   _color:red;   ⁄* IE6支持 *⁄
   *color:red;   ⁄* IE6、IE7支持 *⁄
   *+color:red;   ⁄* IE7支持 *⁄
   color:red \9;   ⁄* IE6、IE7、IE8支持 *⁄
   color:red \0;   ⁄* IE8支持 *⁄
  }
   *     , ie6,ie7可以识别;
   _和- ,  ie6可以识别;
   !important  ,表示高优先级,ie7及以上,firefox都支持,ie6认识带!important的样式属性,但不认识!important的优先级;
  -webkit- ,针对safari,chrome浏览器的内核CSS写法
  -moz-,针对firefox浏览器的内核CSS写法
  -ms-,针对ie内核的CSS写法
  -o-,针对Opera内核的CSS写法
  

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

  • 条件注释
    是HTML源码中被 Microsoft Internet Explorer有条件解释的语句。条件注释可被用来向 Internet Explorer 提供及隐藏代码。
  • IE Hack
    处理各个浏览器兼容问题
  • js 能力检测
    浏览器的能力检测目标不是检测特定的浏览器,而是检测浏览器的能力。这样,只需要检测浏览器是否支持特定的能力,就可以给出特定的解决方案。这一部分检测是解决浏览器兼容问题的主要检测。
  • html5shiv.js
    由于IE6/IE7/IE8还有很大一部分用户,为了让网站浏览者都能正常的访问HTML5网站,解决方案就有下面:
  1. 使用Javascript来使不支持HTML5的浏览器支持HTML标签。目前大多网站采用的这种方式(Bootcss官方例子也是如此)。
  2. 利用脚本document.createElement(“”)创建对应的脚本,CSS选择器便可正确应用到该标签。
  3. 考虑到IE9是支持html5的,所以直接在HTML页面的head标签中添加脚本引用即可。
  • respond.js
    Respond.js 是一个快速、轻量的 polyfill,用于为 [IE]6-8 以及其它不支持 CSS3 Media Querie 的浏览器提供媒体查询的 min-width 和 max-width 特性,实现响应式网页设计(Responsive Web Design)。

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

  • normalize.css
    Normalize.css 是一个可以定制的CSS文件,它让不同的浏览器在渲染网页元素的时候形式更统一。和css reset的用法一样,但是不再那样简单粗暴的将所有的样式去掉,而是保留了一些合理的样式。

  • Modernizr
    Modernizr测试当前浏览器的CSS3和HTML5功能,并通过两种方式使结果可用:作为全局Modernizr对象上以及<html>元素上的类。可以帮助我们更加简单的解决浏览器的兼容性问题。

  • postCSS
    将标准的CSS转化为带有前缀的各个浏览器都能识别的属性

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

http://caniuse.com
http://browserhacks.com

相关文章

  • 浏览器兼容

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

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

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

  • 浏览器兼容

    为何会有浏览器兼容问题 因为市场上的浏览器有很多,不同的浏览器内核对网页的解析存在差异,这也是导致浏览器兼容问题出...

  • 浏览器兼容

    1. 概要 什么是浏览器兼容问题? 同一份代码,有的浏览器效果正常,有的不正常 为什么会有浏览器兼容问题 同一产品...

  • 浏览器兼容相关概念

    什么是浏览器兼容问题?为什么会有浏览器兼容问题? 同一份代码,有的浏览器效果正常,有的不正常 同一产品,版本越老 ...

  • 浏览器兼容

    什么是浏览器兼容问题 同一份代码,有的浏览器效果正常,有的不正常 为什么会有浏览器兼容问题 同一产品,版本越老 b...

  • Browser Hack整理

    浏览器的兼容问题 1.浏览器内核:Mozilla Firefox ( Gecko )Internet Explor...

  • 盒模型 IE与W3C

    ![Uploading image_302998.png . . .] 浏览器兼容问题 由于IE浏览器使用自己的非...

  • 浏览器能力检测

    浏览器的兼容问题是前端开发避不开的一个问题,我们在处理浏览器兼容问题时,可以采取第三方插件来做兼容,或者是浏览器能...

  • Html引用实现不同浏览器兼容问题

    Html引用实现不同浏览器兼容问题 在head部分插入即可

网友评论

      本文标题:浏览器兼容问题

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