Vendor prefixy v CSS

V minulosti medzi prehliadačmi nastala nasledujúca situácia: skôr, ako sa vlastnosť CSS objaví v špecifikácii, prehliadače implementovali skúšobnú verziu tejto vlastnosti so špeciálnou predponou, ktorá sa nazýva vendor prefix.

Pozrime sa na príklade vlastnosti box-sizing ako to vyzerá:

cssp {
  box-sizing: border-box;
}

Táto vlastnosť sa začala podporovať až od Firefox 29, no už od verzie Firefox 2 bola dostupná s prefixom -moz:

cssp {
  -moz-box-sizing: border-box;
}

Ostatné prehliadače mali podobné predpony: -moz - Mozilla Firefox, -webkit - prehliadače na engine Webkit a Blink, -o - Opera na engine Presto, -ms - IE.

Najcrossbrowserovejší variant vlastnosti box-sizing, s použitím vendor prefixov, mal približne tento vzhľad:

cssp {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
}

V súčasnosti sa prehliadače rozhodli upustiť od prefixov kvôli ich nepohodlnosti. A teraz sa namiesto nich používajú takzvané flagy. Vlastnosti sa teraz implementujú do prehliadača, ale štandardne sú vypnuté, no je možné ich zapnúť v nastaveniach prehliadača zaškrtnutím príslušného prepínača v nastaveniach. Je to urobené preto, aby vývojári mali možnosť vyskúšať si novú vlastnosť skôr, než sa oficiálne objaví.