files/en-us/web/css/reference/webkit_extensions/index.md
A {{glossary("vendor prefix")}} is used to indicate that a feature is specific to a certain browser.
User agents based on WebKit or Blink (such as Safari and Chrome) support several extensions to CSS, which are prefixed with -webkit-.
[!NOTE] These properties work in WebKit- or Blink-based browsers except where support notes say otherwise. You should avoid using them on production websites.
-webkit-app-region {{deprecated_inline}}: No longer supported in Safari.-webkit-border-horizontal-spacing-webkit-border-vertical-spacing-webkit- by every browser, for compatibility reasons.-webkit-column-axis: Not supported in Chrome.-webkit-column-progression: Not supported in Chrome.-webkit-cursor-visibility: Not supported in Chrome.-webkit-font-smoothing: See {{CSSxRef("font-smooth")}}.-webkit-hyphenate-limit-after: Not supported in Chrome.-webkit-hyphenate-limit-before: Not supported in Chrome.-webkit-hyphenate-limit-lines: Not supported in Chrome.-webkit-line-align: Not supported in Chrome.-webkit-line-box-contain: Not supported in Chrome.-webkit-line-grid: Not supported in Chrome.-webkit-line-snap: Not supported in Chrome.-webkit-locale-webkit-logical-height-webkit-logical-width-webkit-margin-after-webkit-margin-before-webkit- by every browser for compatibility reasons.-webkit- by every browser for compatibility reasons.-webkit-mask-source-type: Not supported in Chrome.-webkit-max-logical-height-webkit-max-logical-width-webkit-min-logical-height-webkit-min-logical-width-webkit-nbsp-mode: Not supported in Chrome.-webkit-perspective-origin-x-webkit-perspective-origin-y-webkit-rtl-ordering-webkit-text-decoration-skip: Not supported in Chrome.-webkit-text-decorations-in-effect-webkit-text-zoom: Not supported in Chrome.-webkit-transform-origin-x-webkit-transform-origin-y-webkit-transform-origin-z-webkit-user-drag-webkit-user-modifySeveral -webkit- prefixed properties have standard equivalents.
Even if the name and syntax may be different, they shouldn't be used any more.
For each of the properties below, use the standard equivalents.
-webkit-border-after: Use {{CSSxRef("border-block-end")}}.-webkit-border-after-color: Use {{CSSxRef("border-block-end-color")}}.-webkit-border-after-style: Use {{CSSxRef("border-block-end-style")}}.-webkit-border-after-width: Use {{CSSxRef("border-block-end-width")}}.-webkit-border-before-color: Use {{CSSxRef("border-block-start-color")}}.-webkit-border-before-style: Use {{CSSxRef("border-block-start-style")}}.-webkit-border-before-width: Use {{CSSxRef("border-block-start-width")}}.-webkit-border-end: Use {{CSSxRef("border-inline-end")}}.-webkit-border-end-color: Use {{CSSxRef("border-inline-end-color")}}.-webkit-border-end-style: Use {{CSSxRef("border-inline-end-style")}}.-webkit-border-end-width: Use {{CSSxRef("border-inline-end-width")}}.-webkit-border-start: Use {{CSSxRef("border-inline-start")}}.-webkit-border-start-color: Use {{CSSxRef("border-inline-start-color")}}-webkit-border-start-style: Use {{CSSxRef("border-inline-start-style")}}.-webkit-border-start-width: Use {{CSSxRef("border-inline-start-width")}}.-webkit-box-align: Use CSS flexbox with {{CSSxRef("align-items")}}.-webkit-box-direction: Use CSS flexbox with {{CSSxRef("flex-direction")}}.-webkit-box-flex: Use CSS flexbox with {{CSSxRef("flex-grow")}}.-webkit-box-lines: Use CSS flexbox with {{CSSxRef("flex-flow")}}.-webkit-box-ordinal-group: Use CSS flexbox with {{CSSxRef("order")}}.-webkit-box-orient: Use CSS flexbox with {{CSSxRef("flex-direction")}}.-webkit-box-pack: Use CSS flexbox with {{CSSxRef("justify-content")}}.-webkit-column-break-after: Use CSS multicolumn layout with {{CSSxRef("break-after")}}.-webkit-column-break-before: Use CSS multicolumn layout with {{CSSxRef("break-before")}}.-webkit-column-break-inside: Use CSS multicolumn layout with {{CSSxRef("break-inside")}}.-webkit-font-feature-settings: Use {{CSSxRef("font-feature-settings")}} (the prefixed version not supported in Safari).-webkit-hyphenate-character: Use {{CSSxRef("hyphenate-character")}}.-webkit-initial-letter: Use {{CSSxRef("initial-letter")}}.-webkit-line-clamp: Use {{CSSxRef("line-clamp")}}.-webkit-margin-end: Use {{CSSxRef("margin-block-end")}}.-webkit-margin-start: Use {{CSSxRef("margin-block-start")}}.-webkit-padding-after: Use {{CSSxRef("padding-block-end")}}.-webkit-padding-before: Use {{CSSxRef("padding-block-start")}}.-webkit-padding-end: Use {{CSSxRef("padding-inline-end")}}.-webkit-padding-start: Use {{CSSxRef("padding-inline-start")}}.-webkit-fill-available
stretch value provides a standard replacement, but -webkit-fill-available is supported as an alias by browsers for backwards-compatibility reasons.[!NOTE] If there is an invalid pseudo-class within in a chain or group of selectors, the whole selector list is invalid.
:-webkit-any(): Use {{CSSxRef(":is")}}:-webkit-any-link: Use {{CSSxRef(":any-link")}}:-webkit-autofill: Use {{CSSxRef(":autofill")}}:-webkit-autofill-strong-password: Use {{CSSxRef(":autofill")}}:-webkit-drag:-webkit-full-page-media: Use {{CSSxRef(":fullscreen")}}:-webkit-full-screen: Use {{CSSxRef(":fullscreen")}}:-webkit-full-screen-ancestor: Use {{CSSxRef(":fullscreen")}}:-webkit-full-screen-document: Use {{CSSxRef(":fullscreen")}}:-webkit-full-screen-controls-hidden: Use {{CSSxRef(":fullscreen")}}For web-compatibility reasons, Blink, WebKit, and Gecko browsers treat all pseudo-elements starting with ::-webkit- as valid.
If there is an invalid pseudo-element or pseudo-class within in a chain or group of selectors, the whole selector list is invalid.
If a pseudo-element (but not pseudo-class) has a -webkit- prefix, Blink, WebKit and Gecko browsers assume it is valid, not invalidating the selector list.
::-webkit-file-upload-button: Use {{CSSxRef("::file-selector-button")}}::-webkit-input-placeholder: Use {{CSSxRef("::placeholder")}}