我决定不支持IE7;我现在可以使用哪些 JS/CSS/HTML 功能
I've decided not to support IE7; what JS/CSS/HTML features can I now use?
{想法来自 我决定不迎合IE6 - 我可以使用哪些美味的CSS零食?但我想要IE7版本}
好的,首先,这不是关于我是否应该迎合IE7的讨论。我敢肯定,S.O.上有数百个线程,您可以在其中讨论优点,缺点,市场份额,javascript shivs以及随之而来的所有其他内容。
假设我把两根手指放在 IE7 并忽略了它的存在——
我现在可以在 我制作页面的方式?
伪选择器?
父/子选择器?
硬件加速的马铃薯计数?
其他整洁的东西?
放弃IE7会带来哪些新的自由?
我知道你们中的一些人会渴望告诉我为什么我应该支持 ie7 或关于 js 修复,这意味着我可以使用某些东西等 - 请不要浪费你/我/我们的时间!
Internet Explorer 8被Microsoft吹捧为完全符合CSS2.1。但是,已经发现了许多错误,因此它实际上并不完全兼容,但当然这并不意味着它从版本 7 开始没有变得更好。
无论如何,以下是IE8中引入的一些众所周知的功能,这些功能在IE7中不存在(此列表绝不是详尽无遗的):
JavaScript
- 选择器 API 级别 1 的基本实现 (
querySelectorAll()
)
跨域 - 资源共享(跨域 Ajax)的基本实现
- 原生 JSON 解析功能
- DOM 改进(修复 CSS 属性选择器的可能原因 — 见下文)
HTML5 中的 JS API
- 跨文档消息传递
- 网络存储
- 历史遍历
.CSS
CSS2.1
- IE8 已经赶上了添加到 CSS1 属性中的所有(大多数?)CSS2.1 增强功能,您可以在 MSDN 上找到其列表 。
- 修复了盒模型关于折叠边距、浮动和堆叠的问题
-
inherit
关键字 -
outline
属性 -
white-space
pre-wrap
和pre-line
的财产 - 完全支持对任何元素的
display: inline-block
-
display: table
- 生成内容和自动编号:伪元素
:before
和:after
,以及quotes
、content
、attr()
函数和CSS计数器 - 打印和分页介质:
@page
规则现在适用于页面伪类、排版orphans
和widows
,并且在一定程度上支持分页符 - 伪类
:active
和:focus
-
:lang()
伪类 - IE7中影响兄弟组合器,CSS2.1的
+
和CSS3的~
的模糊语法问题已在IE8中得到纠正(* + html
黑客也不再有效) - 仅影响相邻同级运算器
+
的 DOM 更新的晦涩错误已在 IE8 中得到纠正 - 影响 IE7 中 CSS2.1 和 CSS3 属性选择器的 HTML 属性和 DOM 属性问题已在 IE8 中得到纠正
- 一些与特异性相关的晦涩错误已经得到纠正;一个例子是我在这个答案中在IE6/7中确定的各种动态伪类。
CSS3
-
box-sizing
CSS3 中用于content-box
和border-box
的属性(padding-box
最初是 Mozilla 提案,因此它在 IE 中不存在;直到最近才被添加到 CSS3 UI 规范中,截至 2012 年 1 月的 Last Call 工作草案,它仍然面临被删除的风险) - 一些CSS3功能已经存在于IE中,并且在它们被重新调整为各自的规范之前很久就由Microsoft提出,包括
@font-face
,overflow-x
/overflow-y
,text-align-last
,word-wrap
(现在overflow-wrap
)和Ruby文本。
.HTML
-
<abbr>
和<q>
-
<object>
回退
杂项
- 对数据 URI 的支持有限
- 符合无障碍的 WAI-ARIA 标准
当然,还有一些来源:
- IE8发布公告
- CSS 兼容性和 Internet Explorer
- Internet Explorer 8 中的 CSS 改进
- QuirksMode CSS 兼容性表
- IE7 和 IE8 在 caniuse.com 的功能支持比较
相关文章:
- JS CSS切换按钮没有'不要向上移动
- 我应该连接/缩小已经缩小的JS/CSS吗?如果是,如何
- JS/CSS:如何在向下滚动超过1200像素(高度)后更改z索引值
- JS/CSS旋转的DIVS在任何屏幕的中间相遇
- 在企业应用程序框架中包含js/css文件的最佳实践是什么
- Html+js+css的打包程序
- 如何使用jquery/js/css逐步突出显示一段文本
- 重叠的选项卡 JS CSS HTML.
- 如何从我的机器提供HTML + JS + CSS网络应用程序,以便其他人可以查看它
- MVC Razor,包括来自另一个项目的JS/CSS文件
- 最轻的js/css,用于向用户提供SPA正在加载/初始化的视觉反馈
- 我们怎么知道消除HTML/JS/CSS文件中的空白可以缩短页面加载时间呢
- 有条件的包含js/css文件的IE与流星
- node.js可以选择性地引入到用普通PHP/js/CSS/HTML构建的web应用程序中吗
- 无法使用我的代码(html/js/css)初始化网络摄像头
- 当使用HTTP/2时,缩小和连接JS/CSS文件,以及使用精灵进行图像处理仍然可以提供性能优势
- JS CSS线夹重置(TextOverflowClamp.JS)
- JS CSS时钟在IE中不工作
- 有没有一个Wordpress插件可以让我展示HTML/JS/CSS的例子
- 使用Meteor为每个模板动态加载JS/CSS