Dajbych.net


Vendor prefixy v CSS ztrácejí smysl, IE je začíná ignorovat

, 3 minuty čtení

Před­pony výrobce pro­hlí­žeče v kaská­do­vých stylech (-ms-, -moz-, -web­kit-, -khtml-, -o-) po­z­bý­vají svého významu. In­ter­net Ex­plo­rer 11 si jich totiž pře­stává vší­mat a nao­pak za­číná pod­po­ro­vat ně­které vlast­nosti ur­čené pro po­kusné vpra­vení no­vých tech­nik do Web­Kitu. Výrobci strá­nek zá­měrně upřed­nost­ňují jen je­den pro­hlí­žeč, nej­čas­těji právě s já­drem Web­Kit, a vy­tvá­řejí tak mylný do­jem, že ostatní pro­hlí­žeče to samé ne­sve­dou. Často je však prav­dou opak.

Pro­tože tím vy­vstává velký problém zejména pro Win­dows Phone, ne­zbývá Micro­softu nic ji­ného, než před­stírat jiný pro­hlí­žeč. In­ter­net Ex­plo­rer 11 pro PC změ­nil svůj User-Agent ře­tě­zec a stejný osud po­tkal i verzi pro Win­dows Phone 8.1. Ta jde ale ještě o krok dál. Tech­niky, které jsou do­stupné s před­po­nou -web­kit- a které IE11 pod­po­ruje také, bu­dou chá­pány tak, jako kdyby byly uve­dené s před­po­nou -ms-. Je prav­dě­po­dobné, že se tato změna ča­sem pro­mítne i v desk­to­pové verzi.

He­nri Si­vo­nen, vý­vo­jář Mo­zilly, před třemi lety peč­livě vy­svět­lil, proč jsou před­pony výrobců v CSS špatný ná­pad. Eric Law, bý­valý vý­vo­jář Micro­softu, ne­dávno výstižně shr­nul, že před­stírání jiných verzí, než těch sku­teč­ných, má svůj dobrý dů­vod, pro­tože se snaží při­způ­so­bit špat­nému kódu ně­koho ji­ného.

Když před­ponu výrobce po­u­ží­váte, mu­síte prostě po­čítat s tím, že fun­guje jen ně­kde a že se v bu­doucnu může spe­ci­fi­kace (a ná­sledně im­ple­men­tace) změ­nit. Vždy, když vyjde nová verze pro­hlí­žeče, budete muset zkon­t­ro­lo­vat, jestli vaše stránka vy­padá a fun­guje stále stejně. Vzhle­dem k tomu, že nové verze pro­hlí­žečů vy­chá­zejí kaž­dých pár týdnů, je nutné mít každé pou­žití před­pony na zře­teli.

Předpony pro­hlí­žeče však měly kom­pa­ti­bi­litu nao­pak zlep­šit. Předpona zna­mená prav­dě­po­dob­nou změnu v bu­doucnu. Její ab­sence nao­pak značí stá­lost, větší, než v mi­nu­losti, právě díky předpo­nám. Zdá se ale, že ne­u­káz­ně­nost vý­vo­jářů může tuto myš­lenku roz­me­tat. Mož­nost vý­vo­jáře vyu­žít dvě roz­dílné po­kusné im­ple­men­tace je pod­mí­něna dů­sled­ným do­dr­žo­vá­ním před­pon ze strany pro­hlí­žeče. Dů­sledné do­dr­žo­vání před­pon ze strany pro­hlí­žeče je nao­pak pod­mí­něno zdr­že­ním se před­pon mimo we­bové tech­nické ukázky.