[webkit-dev] Removing support for the -khtml- (and -apple-?) vendor prefixes

Maciej Stachowiak mjs at apple.com
Mon Jul 12 11:45:13 PDT 2010

On Jul 12, 2010, at 10:44 AM, Peter Beverloo wrote:

> Right now WebKit has by far the most prefixed elements[1], a
> significant part of which have not been standardized/drafted yet.
> Keeping the translation for all properties active practically triples
> the amount of supported vendor-specific CSS extensions, which cannot
> be desirable.
> I'm not opposed to the idea of limiting the supported properties for
> these prefixes to a certain subset, but my preference would be to only
> support behavioral properties as "-webkit-binding",
> "-webkit-font-smoothing", "-webkit-highlight" and
> "-webkit-user-(drag|modify|select)". In the same piece of code,
> prefixed versions of border-radixes and opacity are still supported as
> well. Although I think the latter of which could be removed as well,
> considering Safari 1.1 got released in 2003.

WebKit really uses vendor-prefixed properties for a few different purposes:

1) Properties that are only intended to be used internal to the engine, to implement particular effects.
2) Properties that are future CSS standards but not yet mature enough to remove the prefix.
3) Experimental properties that may be proposed as standards in the future.
4) Proprietary properties that we don't intend to standardize, but which can be used by content.
5) Properties that were once prefixed for one of the above reasons, and we keep the prefixed version in addition to the unprefixed one.

One beneficial exercise would be to classify prefixed properties into the above buckets. For categories (3) and (4), we should consider whether the properties in question can actually be proposed as standards, and therefore move to category (2). For category (5), we should assess the compatibility impact of removing the prefixed version.


More information about the webkit-dev mailing list