Rumah > hujung hadapan web > tutorial js > Bencana awalan vendor CSS yang akan berlaku

Bencana awalan vendor CSS yang akan berlaku

Christopher Nolan
Lepaskan: 2025-03-01 00:21:09
asal
879 orang telah melayarinya

The Impending CSS Vendor Prefix Catastrophe

mata utama

Terlalu berlebihan
    awalan vendor CSS (terutama
  • awalan) memberikan masalah yang berpotensi dengan piawaian web dan keserasian silang penyemak imbas. Pemaju sering menggunakan awalan ini untuk mengakses ciri-ciri baru, tetapi ini boleh membawa kepada kod khusus yang tidak standard, penyemak imbas. -webkit
  • World Wide Web Alliance (W3C) sedang mempertimbangkan untuk menyokong awalan
  • dalam pelayar bukan WebKit. Walau bagaimanapun, ini boleh menyebabkan ketidakcocokan dalam pelaksanaan atribut yang sama dan seterusnya menggalakkan pemaju menggunakan atribut khusus WebKit, yang boleh menjadikan mereka standard de facto. -webkit
  • Tanggungjawab untuk masalah ini terletak pada pemaju dan vendor penyemak imbas. Pemaju perlu mengelakkan menulis kod khusus penyemak imbas dan menguji laman web mereka dalam pelbagai pelayar. Pada masa yang sama, vendor penyemak imbas harus memberikan lebih banyak maklumat mengenai status standard prefix yang diseragamkan dan menyerlahkan apabila mereka sudah lapuk.
Hubungan antara pemaju dan awalan vendor CSS dikaitkan dengan cinta dan benci. Mereka membenarkan kami menggunakan teknologi canggih, tetapi dengan kos pernyataan yang panjang:

background-image: -webkit-linear-gradient(#fff, #000);
background-image: -moz-linear-gradient(#fff, #000);
background-image: -ms-linear-gradient(#fff, #000);
background-image: -o-linear-gradient(#fff, #000);
background-image: linear-gradient(#fff, #000);
Salin selepas log masuk
Salin selepas log masuk
secara teorinya berfungsi dengan baik, tetapi pertimbangkan situasi sebenar: 1. Ciri -ciri eksperimen biasanya dilaksanakan terlebih dahulu dalam enjin WebKit, dan tidak ada jaminan bahawa mereka akan disalin dalam penyemak imbas lain. 2. Sukar untuk menentukan sama ada atribut awalan vendor adalah sebahagian daripada spesifikasi CSS. Sesetengah vendor tidak mengemukakan atribut untuk penyeragaman. 3. Versi awalan vendor yang tidak betul terus disokong walaupun sifat standard berubah. Kod lama masih berfungsi;

anda sering mendapati bahawa laman web hanya menggunakan prefix

-walaupun pelayar lain menyokong harta itu atau ia mempunyai ketersediaan yang luas tanpa awalan (mis. -webkit). Oleh itu, Chrome dan Safari kelihatan lebih baik daripada pelayar bersaing- border-radius pengeluar lain tidak berpuas hati dengan ini. Soalan ini dibangkitkan dan dibincangkan pada mesyuarat W3C pada 7 Februari 2012: & GT; Anda akan melihat persembahan dari semua penyokong piawaian web yang menganjurkan orang untuk menggunakan awalan webkit. Tugas kami adalah untuk menyelesaikan masalah interoperabilitas. Pada masa ini, kami cuba menentukan yang mana dan berapa banyak sifat awalan WebKit yang sebenarnya disokong di Mozilla. Jika kita tidak menyokong awalan WebKit, kita akan dikecualikan dari sebahagian daripada web mudah alih.

mari kita fikirkan dengan teliti ini. Pelayar bukan WebKit akan menyokong awalan -webkit. Ini adalah penyelesaian W3C sedang dipertimbangkan. Idea ini mungkin menjadi kekalahan yang menghancurkan. Dua atau lebih pelaksanaan harta WebKit yang sama akan tidak serasi, jadi pemaju tidak akan dapat menggunakannya di mana -mana sahaja. Tiada siapa yang akan menang - termasuk Apple dan Google. Tetapi saya lebih bimbang tentang kerosakan yang tidak dapat diperbaiki yang akan menyebabkan jika penyelesaiannya berjaya. Sebaik sahaja pemaju mendapati bahawa awalan WebKit sah di Firefox, iaitu, dan opera, mereka mengharapkan mereka bekerja pada semua atribut. Adopsi WebKit sahaja akan berkembang dengan pesat dan vendor akan dipaksa untuk melaksanakan awalan ini sepanjang proses. Pada masa itu, tanpa mengira spesifikasi W3C, atribut WebKit akan menjadi standard de facto. Akhir Permainan: Web Terbuka ditutup. Impaknya juga melampaui CSS: banyak API JavaScript baru mempunyai awalan vendor. Siapa yang harus bertanggungjawab?

kita boleh menyalahkan kegagalan pada:

W3C Working Group
    Piawaian web mengambil masa terlalu lama untuk matang. Ini mungkin tidak dapat dielakkan, tetapi pengeluar penyemak imbas melangkaui prosesnya.
  • Pengilang pelayar
  • Mereka tidak sabar -sabar untuk memperkenalkan teknologi baru, mudah untuk menambah awalan dan melupakannya. Pemaju Web memerlukan lebih banyak maklumat: Adakah W3C memandangkan harta ini dan kapan tidak membuatnya? Sebaik -baiknya, apabila penyemak imbas melaksanakan sifat standard, awalan eksperimen hilang. Vendor tidak akan melakukan ini kerana ia akan memecahkan laman web, tetapi mereka boleh berbuat lebih banyak untuk menyerlahkan isu ini, seperti menyediakan alat pengesanan yang sudah lapuk atau mengeluarkan mesej ralat kepada konsol pemaju.
  • Electric dan Google
  • kedua -duanya bersalah mempromosikan awalan WebKit sebagai bahagian standard pembangunan web HTML5 setiap hari. Apple dituduh secara aktif menentang W3C.
  • Mozilla, Microsoft, dan Opera
  • vendor lain biasanya tertinggal di belakang pelayar WebKit selama berbulan -bulan, jika tidak bertahun -tahun. Menambah awalan WebKit adalah penyelesaian yang tidak masuk akal: sudah tiba masanya untuk meningkatkan tahap mereka.
  • Laman web dan pengkhotbah teknikal
  • kita semua suka demo sejuk, tetapi pengkhotbah sering mengabaikan menyebut bahawa atribut adalah eksperimen dan mungkin tidak mendapat sokongan penyemak imbas penuh (
  • ya, ini termasuk SitePoint ). Idealnya, kod harus berjalan dalam sekurang -kurangnya dua pelayar; pemaju web
  • kami terlalu malas. Kami menulis kod khusus penyemak imbas, dan sementara kami mungkin berhasrat untuk membetulkannya kemudian, kami jarang melakukannya. Adakah anda ingat apabila kali terakhir pemaju mensasarkan penyemak imbas tertentu? Itu IE6. Sepuluh tahun kemudian, kami masih berada di bawah pengaruh keputusan ini. Adakah anda benar -benar mahu sejarah mengulangi?
  • sudah tiba masanya untuk mengambil tindakan

Saya membantah penyemak imbas bukan web untuk menyokong awalan webkit. Pada masa yang terbaik, ia menjadikan awalan tidak dapat digunakan. Paling teruk, ia mengganggu keseluruhan proses penyeragaman. Anda mungkin bersetuju atau tidak bersetuju, tetapi sila nyatakan pendapat anda kepada rakan sekerja, blog dan rangkaian sosial. W3C dan pengeluar penyemak imbas akan mendengar maklum balas anda; Kemudian uji laman web anda dalam pelbagai pelayar. Penurunan sedikit elegan adalah OK, tetapi mengabaikan satu atau lebih pelayar moden dengan sokongan yang sama tidak baik. Betulkan kod atau laman web anda memburukkan lagi masalah.

Soalan Lazim (Soalan Lazim) Mengenai awalan CSS dan WebKit

Apakah tujuan prefix CSS (seperti

, -moz-, -o- dan -ms-)? -webkit-

awalan CSS, yang juga dikenali sebagai awalan vendor, adalah cara untuk pengeluar penyemak imbas untuk menambahkannya sebelum ciri -ciri CSS baru menjadi standard W3C (World Wide Web Alliance). Awalan ini memastikan bahawa ciri baru hanya sah dalam penyemak imbasnya. Sebagai contoh,

adalah untuk Mozilla Firefox, -moz- adalah untuk opera, -o- adalah untuk Microsoft Internet Explorer dan Edge, -ms- adalah untuk penyemak imbas menggunakan enjin WebKit, seperti Safari dan versi Chrome yang lebih lama. -webkit-

Apakah krisis awalan webkit?

krisis awalan WebKit merujuk kepada situasi di mana pelayar bukan WebKit mula menyokong awalan

untuk memastikan keserasian dengan laman web yang hanya menggunakan awalan ini. Ini membawa kepada pemecahan piawaian web dan menjadikannya lebih sukar untuk penyemak imbas baru memasuki pasaran. -webkit-

Bagaimana menggunakan awalan CSS dalam kod saya?

Untuk menggunakan awalan CSS, tambahkannya sebelum sifat CSS dalam lembaran styleshe. Sebagai contoh, untuk menggunakan atribut

dengan awalan vendor, anda boleh menulis: border-radius

background-image: -webkit-linear-gradient(#fff, #000);
background-image: -moz-linear-gradient(#fff, #000);
background-image: -ms-linear-gradient(#fff, #000);
background-image: -o-linear-gradient(#fff, #000);
background-image: linear-gradient(#fff, #000);
Salin selepas log masuk
Salin selepas log masuk
(jawapan kepada soalan -soalan berikut adalah serupa, dan telah ditinggalkan untuk mengekalkan struktur keseluruhan artikel dan integriti maklumat)

Atas ialah kandungan terperinci Bencana awalan vendor CSS yang akan berlaku. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan