Prefixi tal-Bejjiegħa CSS

X'inhuma u għaliex għandek tużahom

Il-prefissi tal-bejjiegħ tas-CSS, li xi drabi huma magħrufa bħala prefissi tal-brawżer tas-CSS , huma mod li dawk li jfasslu l-browser iżidu l-appoġġ għal karatteristiċi CSS ġodda qabel ma dawk il-karatteristiċi huma kompletament appoġġjati fil-browsers kollha. Dan jista 'jsir matul tip ta' perjodu ta 'ttestjar u sperimentazzjoni fejn il-manifattur tal-browser jiddetermina eżattament kif se jiġu implimentati dawn il-karatteristiċi CSS ġodda. Dawn il-prefissi saru popolari ħafna biż-żieda ta ' CSS3 ftit snin ilu.

Meta CCS3 ġie introdott l-ewwel darba, għadd ta 'proprjetajiet eċċitati bdew jolqtu browsers differenti f'ħinijiet differenti. Per eżempju, il-webkit-powered browsers (Safari u Chrome) kienu l-ewwel li jintroduċu xi wħud mill-proprjetajiet stil ta 'animazzjoni bħal tittrasforma u transizzjoni. Bl-użu ta 'proprjetajiet prefissati minn bejjiegħ, id-disinjaturi tal-web setgħu jużaw dawk il-karatteristiċi ġodda fix-xogħol tagħhom u jarawhom jidhru fuq il-browsers li appoġġjawhom minnufih, minflok li jkollhom jistennew li kull manifattur ieħor tal-brawżer jlaħħaq!

Allura mill-perspettiva ta 'żviluppatur tal-web front-end, il-prefissi tal-brawżer jintużaw biex iżidu karatteristiċi ġodda tas-CSS fuq sit waqt li jkollhom il-kumdità li jafu li l-browsers se jappoġġaw dawk l-istili. Dan jista 'jkun ta' għajnuna speċjalment meta manifatturi tal-brawżers jimplimentaw proprjetajiet f'modi kemmxejn differenti jew b'sintaxxa differenti.

Il-prefiss CSS browser li tista 'tuża (li kull wieħed minnhom huwa speċifiku għal browser differenti) huma:

Fil-biċċa l-kbira tal-każijiet, biex tuża proprjetà ġdida stil CSS, tieħu l-proprjetà CSS standard u żid il-prefiss għal kull browser. Il-verżjonijiet prefixi dejjem jiġu l-ewwel (fi kwalunkwe ordni li tippreferi) filwaqt li l-proprjetà tas-CSS normali se tasal l-aħħar. Per eżempju, jekk trid iżżid transizzjoni CSS3 għad-dokument tiegħek, tuża l-proprjetà ta 'transizzjoni kif muri hawn taħt:

-webkit- transizzjoni: il-faċilità 4s kollha;
-moz- tranżizzjoni: il-faċilità 4s kollha;
-ms- tranżizzjoni: il-faċilità 4s kollha;
-o- transizzjoni: il-faċilità 4s kollha;
tranżizzjoni: il-faċilità 4s kollha;

Nota: Ftakar, uħud mill-browsers għandhom sintassi differenti għal ċerti proprjetajiet minn oħrajn, għalhekk ma jassumux li l-verżjoni tal-browser prefiss ta 'proprjetà hija eżattament l-istess bħall-proprjetà standard. Per eżempju, biex toħloq gradjent CSS , tuża l-proprjetà tal-gradjent lineari. Firefox, Opera u verżjonijiet moderni ta 'Chrome u Safari jużaw dik il-proprjetà bil-prefiss xieraq filwaqt li l-verżjonijiet bikrija ta' Chrome u Safari jużaw il-prefixed property -webkit-gradient. Ukoll, Firefox juża valuri differenti minn dawk standard.

Ir-raġuni li int dejjem tispiċċa d-dikjarazzjoni tiegħek bil-verżjoni normali u mhux prefixata tal-proprjetà CSS hija li meta l-browser jappoġġja r-regola, se tuża dik. Ftakar kif tinqara CSS. Ir-regoli sussegwenti jieħdu preċedenza fuq dawk ta 'qabel jekk l-ispeċifiċità hija l-istess, għalhekk browser jaqra l-verżjoni tal-bejjiegħ ta' regola u jużaha jekk ma jappoġġjax dik normali, iżda ladarba dan jagħmel ħsara lill-verżjoni tal-bejjiegħ ir-regola attwali tas-CSS.

Prefixi tal-bejjiegħ mhumiex Hack

Meta l-prefissi tal-bejjiegħa ġew introdotti għall-ewwel darba, ħafna professjonisti tal-web staqsew jekk kinux hack jew bidla lura lejn il-ġranet skuri tal-forking tal-kodiċi ta 'websajt biex tappoġġja browsers differenti (ftakar dawk " Dan is-sit huwa l-aħjar meqjus f'IE " messaġġi). Il-prefissi tal-bejjiegħa CSS mhumiex hacks, madankollu, u m'għandekx riservi dwar l-użu tagħhom fix-xogħol tiegħek.

CSS hack jisfrutta d-difetti fl-implimentazzjoni ta 'element jew proprjetà oħra sabiex tikseb proprjetà oħra taħdem sew. Pereżempju, il-mudell tal-kaxxa Hack sfruttat difetti fl-analiżi tal- proprjetà tal-familja tal- vuċi jew kif il-browsers jeħlu fuq il-linji ta 'barra (\). Iżda dawn il-hacks intużaw biex jiffissaw il-problema tad-differenza bejn kif l-Internet Explorer 5.5 ttratta l-mudell tal-kaxxa u kif Netscape interpretatha, u m'għandha x'taqsam xejn mal-istil tal-familja tal-leħen. B'xorti tajba dawn iż-żewġ browsers antikwati huma dawk li aħna ma għandniex tħassib lilna nfusna f'dawn il-jiem.

Prefix ta 'bejjiegħ mhuwiex hack għaliex jippermetti l-ispeċifikazzjoni biex jistabbilixxi regoli dwar kif proprjetà tista' tiġi implimentata, filwaqt li fl-istess ħin tippermetti lil dawk li jfasslu l-brawżers biex jimplimentaw proprjetà b'mod differenti mingħajr ma jinkiser kollox. Barra minn hekk, dawn il-prefissi qed jaħdmu b'karatteristiċi tas-CSS li eventwalment ikunu parti mill-ispeċifikazzjoni . Aħna sempliċement inżid xi kodiċi sabiex ikollok aċċess għall-proprjetà kmieni. Din hija raġuni oħra għalfejn tispiċċa r-regola tas-CSS mal-proprjetà normali mhux prefixata. B'dan il-mod inti tista 'titlaq il-verżjonijiet prefissati ladarba l-appoġġ sħiħ tal-browser jinkiseb.

Trid tkun taf x'inhi l-appoġġ tal-browser għal ċerta karatteristika? Il-websajt CanIUse.com hija riżors sabiħ għall-ġbir ta 'din l-informazzjoni u l-kiri li taf liema browsers, u liema verżjonijiet ta' dawk il-browsers, attwalment jappoġġaw karatteristika.

Prefixi tal-bejjiegħ huma tedjanti imma temporanji

Iva, jista 'jħossu tedjanti u ripetittiv li jkollok tikteb il-proprjetajiet 2-5 darbiet biex twassalha taħdem fil-browsers kollha, imma hija sitwazzjoni temporanja. Pereżempju, ftit snin ilu, biex issettja kantuniera mdawra fuq kaxxa li kellek tikteb:

-moz-border-radius: 10px 5px;
-webkit-border-top-left-radius: 10px;
-webkit-border-top-right-radius: 5px;
-webkit-border-bottom-right-radius: 10px;
-webkit-border-bottom-left-radius: 5px;
raġġ tal-fruntiera: 10px 5px;

Imma issa li l-browsers waslu biex jappoġġaw bis-sħiħ din il-karatteristika, int verament biss teħtieġ il-verżjoni standardizzata:

raġġ tal-fruntiera: 10px 5px;

Chrome appoġġja l-proprjetà CSS3 mill-verżjoni 5.0, Firefox miżjudha fil-verżjoni 4.0, Safari żiedha f'5.0, Opera f'10.5, iOS f'4.0, u Android f'2.1. Anke l-Internet Explorer 9 jappoġġjaha mingħajr prefiss (u IE 8 u aktar baxxi ma jappoġġjawha bi jew mingħajr prefissi).

Ftakar li l-browsers dejjem se jkunu qed jinbidlu u se jkunu meħtieġa approċċi kreattivi biex jappoġġjaw browsers anzjani sakemm ma tkunx qed tippjana li tibni paġni tal-web li huma snin wara l-aktar metodi moderni. Fl-aħħar, il-prefissi tal-kitba tal-brawżer hija ħafna iktar faċli minn konstatazzjoni u esplojtazzjoni ta 'żbalji li x'aktarx jiġu ffissati f'verżjoni futura, li jeħtieġu li ssib żball ieħor biex tisfrutta u l-bqija.