最近,我看到一些带有“webkit”标签的问题。这类问题通常是基于web的问题,与CSS、jQuery、布局、跨浏览器兼容性问题等有关…

那么什么是“webkit”,它与CSS有什么关系呢?我还注意到很多-webkit-…属性在各种网站的源代码。这两者有关系吗?

更新

从目前的答案来看…WebKit是一个HTML/CSS浏览器渲染引擎Safari/Chrome。IE/Opera/Firefox有这样的引擎吗?使用其中一种引擎的优缺点有什么不同?我可以在Firefox中使用WebKit功能吗?

终极问题……IE支持WebKit吗?

更新2

所有主流浏览器都使用不同的呈现引擎。我想这就是为什么有这么多跨浏览器兼容性问题的一个重要原因!

那么,是否存在某种项目或移动到所有浏览器都将使用的标准渲染引擎?HTML5会解决跨浏览器兼容性问题吗?


当前回答

-webkit-是Chrome, Safari, Opera和iOS浏览器的组合。他们都有一个共同的祖先,所以他们的能力/限制(当涉及到运行CSS和Javascript时)通常仅限于这个组。

开发人员会在-webkit-后面加上一些代码,这意味着代码只能在Chrome、Safari、Opera和iOS浏览器上运行。以下是完整的列表:

-webkit (Chrome, Safari,更新版本的Opera,几乎所有的iOS浏览器(包括iOS的Firefox);基本上,任何基于WebKit的浏览器)

-moz - (Firefox)

-o-(旧的,webkit之前的,Opera版本)

-ms- (Internet Explorer和Microsoft Edge)

其他回答

Webkit是Chrome和Safari使用的HTML渲染引擎。

它支持许多自定义CSS属性,前缀为-webkit-。

Webkit是苹果Safari浏览器和谷歌的Chrome浏览器中使用的html/css渲染引擎。 css值前缀-webkit-是特定于webkit的,它们通常是CSS3或其他非标准化的特性。

回答更新2 W3c是一个试图标准化这些东西的组织,他们编写规则,然后程序员编写他们的渲染引擎来解释这些规则。所以基本上w3c说div应该“这样工作”,然后引擎编写人员使用该规则来编写他们的代码,任何错误或对规则的错误解释都会导致兼容性问题。

关于WebEngines(尤其是webKit)及其开发人员的良好文档,你可以在以下地方阅读: WebKit

除了@KennyTM所说的:

即 引擎:三叉戟 CSS-prefix: - ms 边缘 引擎:EdgeHTML→Blink3 CSS-prefix: - ms 火狐 引擎:壁虎 CSS-prefix: -moz 歌剧 引擎:Presto→Blink1 CSS-prefix: -o (Presto) and -webkit (Blink) Safari WebKit引擎: CSS-prefix: webkit 铬 引擎:WebKit→Blink2 CSS-prefix: webkit

1) 2013年2月12日,Opera(版本15+)宣布他们将从自己的引擎Presto转移到名为Blink的WebKit上。

2) 2013年4月3日谷歌(Chrome版本28+)宣布他们将使用基于webkit的Blink引擎。

3) 2018年12月6日,微软(Microsoft Edge 79+稳定)宣布他们将使用基于webkit的Blink引擎。

Webkit是流行浏览器Safari和Chrome以及其他浏览器中使用的渲染引擎 每个浏览器都有一个渲染引擎来绘制HTML/CSS网页。

IE→三叉戟(已停产) Edge→EdgeHTML (Trident的清理叉) 火狐→壁虎 Opera→Presto(从2013年2月开始不再使用Presto,现在考虑Opera = Chrome) Safari→WebKit Chrome→Blink (WebKit的一个分支)。