浏览器兼容

2016-08-28  本文已影响0人  饥人谷_duoduo

1.如何调试 IE 浏览器.
在ie9上按放12出现的调试者工具里可以选择直接调试IE9、IE8、IE7(若是IE6则需要重新再下载一个Virtural IE6)


Paste_Image.png

2.什么是CSS hack?在 CSS 和 HTML里如何写 hack?在 CSS 中 ie6、ie7的 hack 方式?
CSS hack由于不同厂商的浏览器,比如Internet Explorer,Safari,Mozilla Firefox,Chrome等,或者是同一厂商的浏览器的不同版本,如IE6和IE7,对CSS的解析认识不完全一样,因此会导致生成的页面效果不一样,得不到我们所需要的页面效果。
这个时候我们就需要针对不同的浏览器去写不同的CSS,让它能够同时兼容不同的浏览器,能在不同的浏览器中也能得到我们想要的页面效果。 简单的说,CSS hack的目的就是使你的CSS代码兼容不同的浏览器。当然,我们也可以反过来利用CSS hack为不同版本的浏览器定制编写不同的CSS效果。

Paste_Image.png Paste_Image.png Paste_Image.png

3.列举几种 浏览器兼容问题
display:inline-block;
对块级元素设置这个属性的时候,IE67是不支持的,需要如下语句:

Paste_Image.png

4.针对兼容、多浏览器覆盖有什么看法?渐进增强优雅降级是什么意思?reset.css和normalize.css
分别是做什么的?为什么推荐使用 nomalize.css?
答:一般来讲,如果有超过一定百分比的人数使用某个浏览器,我们在设计页面时候就要考虑到此浏览器的兼容问题。主要就是IE678,火狐和谷歌浏览器。先尽量写代码,如果月到一些问题可以用审查工具去看具体哪有问题,配合CANIUSE的网站查询兼容情况,再酌情进行修改。

2.Normalize.css 修复了浏览器的bug它修复了常见的桌面端和移动端浏览器的bug。这往往超出了Reset所能做到的范畴。关于这一点,Normalize.css修复的问题包含了HTML5元素的显示设置、预格式化文字的font-size问题、在IE9中SVG的溢出、许多出现在各浏览器和操作系统中的与表单相关的bug。3.Normalize.css 不会让你的调试工具变的杂乱使用Reset最让人困扰的地方莫过于在浏览器调试工具中大段大段的继承链,如下图所示。在Normalize.css中就不会有这样的问题,因为在我们的准则中对多选择器的使用时非常谨慎的,我们仅会有目的地对目标元素设置样式。

3.Normalize.css 是模块化的这个项目已经被拆分为多个相关却又独立的部分,这使得你能够很容易也很清楚地知道哪些元素被设置了特定的值。因此这能让你自己选择性地移除掉某些永远不会用到部分(比如表单的一般化)。
4.Normalize.css 拥有详细的文档Normalize.css的代码基于详细而全面的跨浏览器研究与测试。这个文件中拥有详细的代码说明并在Github Wiki中有进一步的说明。这意味着你可以找到每一行代码具体完成了什么工作、为什么要写这句代码、浏览器之间的差异,并且你可以更容易地进行自己的测试。这个项目的目标是帮助人们了解浏览器默认是如何渲染元素的,同时也让人们很容易地明白如何改进浏览器渲染。

6.IE盒模型和标准盒模型有什么区别? 怎样使 IE678使用标准盒模型?box-sizing:border-box
有什么作用。
IE盒模型内容width=border+padding;标准盒模型width=内容区宽度。
设置DOCTYPE,即可使 IE6 7 8 使用标准盒模型。
box-sizing:border-box按IE盒模型来渲染,宽度width=border + padding + content宽度。

上一篇 下一篇

猜你喜欢

热点阅读