Dlaczego potrzebne są prefiksy dostawców? Czas ponownie przemyśleć prefiksy dostawców w CSS

6 lutego 2012 o 14:14

CSS3: życie bez przedrostków

  • Rozwój strony internetowej

Prefiksy to dobra rzecz. Pomagają producentom przeglądarek wdrażać nowe funkcje. Ale życie programistów staje się od nich tylko trudniejsze. Istnieje wiele przedrostków, czasami występują różnice w składni.

Problem jest oczywisty. Potrzebujemy sposobu, aby ułatwić pracę z przedrostkami.

Oczywiście nierozsądnym byłoby zaprzestanie używania przedrostków. Całkiem możliwe jest jednak przeniesienie odpowiedzialności za ich generowanie na narzędzia, które istnieją specjalnie do tego celu. Próbowałem wypisać możliwe opcje.

1. Preprocesory

Istotą preprocesorów jest to, z czego może korzystać autor pliku stylu dodatkowe funkcje, których nie ma w CSS, takich jak zmienne, podobieństwa funkcji i wiele więcej, po uprzednim przestudiowaniu składni preprocesora, a preprocesor już utworzy normalny plik style, zastępując zmienne i inny kod wartościami statycznymi. Możliwość zamiany kodu może być również wykorzystana do automatycznego generowania kodu z prefiksami w różnych przeglądarkach.

Najsławniejszy Preprocesory CSS są to LESS i SASS.

Są bezpośrednimi konkurentami, chociaż istnieje między nimi różnica. Obydwa mogą być używane po stronie serwera, ale LESS jest również dostępny jako plik javascript, więc możesz zwrócić szczególną uwagę na tę funkcję.

MNIEJ
Ten preprocesor ma prostszą składnię niż jego konkurent. Możliwe jest przetwarzanie plików stylów po stronie serwera, ale obecnie interesuje nas możliwość pracy po stronie klienta poprzez plik javascript.

Połączenie




Mieszanie
.border-promień(@radius: 3px) (
-webkit-border-radius: @radius;
-moz-border-radius: @radius;
promień granicy: @radius;
}

Stosowanie
#kształt1(
.border-radius(10px);
}

Aby pracować z przedrostkami, musisz użyć miksów (tego samego kodu, który wie, co i gdzie zastąpić). Istnieją gotowe zestawy miksinów i bibliotek dla CSS3
lesselements.com
github.com/jdmiller82/-lessins-
snipplr.com/view/47181/less-classes
roel.vanhintum.eu/więcej-mniej

Nie jest konieczne kompilowanie plików .less na serwerze lub w przeglądarce, możesz pobrać gotowy plik lokalnie Plik CSS i już korzystam z niego na stronie
SimpLESS to aplikacja, która automatycznie kompiluje .less do standardowego CSS. Bezpłatnie na wszystkie platformy.
Mniej aplikacji — podobna aplikacja, ale tylko dla komputerów Mac.


Serwer przetwarza pliki SASS, komputer kliencki otrzymuje gotowy plik .css

Zalety preprocesorów:
+ Oprócz prefiksów możesz zrobić o wiele więcej rzeczy
+ Możliwość automatycznego przetwarzania pliku CSS (np. kompresja, usuwanie niepotrzebnych rzeczy)
+ Normalne buforowanie (chociaż LESS jest buforowany przy użyciu localStorage)

Wady preprocesorów:
– Dla wersji z javascriptem – zależność od włączonych skryptów w przeglądarce
– Kod generowany jest ze wszystkimi możliwymi prefiksami, a nie tylko tymi, których potrzebuje konkretna przeglądarka

3. Generatory

Ta metoda jest już stosowana przez wielu. Po prostu otwórz go i skopiuj stamtąd gotowy kod z przedrostkami.

Niedawno próbowałem znaleźć generator, który automatycznie dodawałby właściwości z prefiksami do standardowej właściwości, którą napisałem. Okazało się, że opcji jest kilka.

Przedrostki dostawców to specjalne przedrostki dodawane przed nazwą Właściwości CSS i skupiają się na eksperymentalnych funkcjach niektórych przeglądarek. Każda przeglądarka ma swój własny prefiks dostawcy.

Dzisiaj chcielibyśmy porozmawiać o przedrostkach dostawców, wymienić te najpopularniejsze i trochę filozofować na temat zasadności ich użycia.

Co to jest sprzedawca

Przede wszystkim chciałbym zdefiniować pojęcie słowa „sprzedawca”, aby dla nas wszystkich było jasne, dlaczego prefiksy CSS nazywane są prefiksami dostawców, a nie czymś innym. Sprzedawca- firma lub marka produkująca produkty lub świadcząca usługi oraz dostarczająca je pod własną marką. Słowo pochodzi z języka francuskiego zemsta- sprzedać.

Czym są prefiksy dostawców w CSS

W przypadku prefiksów CSS dostawcami są producenci przeglądarek, którzy korzystają z własnych znak towarowy w formie skróconej jako przedrostek (przedrostek) niektórych właściwości CSS w celu identyfikacji. " Dlaczego warto używać tych przedrostków?„, pytasz. Używane są przedrostki dostawców różne przeglądarki do realizacji w lista CSS właściwości i wsparcie ich pracy z własnymi silnikami dla nowych właściwości eksperymentalnych, które nie weszły jeszcze oficjalnie do obiegu i nie zostały dodane do specyfikacji W3C. Innymi słowy, jakaś nieruchomość może pełnić zupełnie nowe i często bardzo przydatna funkcja, które wcześniej trzeba było realizować za pomocą specjalnych hacków, trików, trików czy nawet javascriptów. Jednak ta właściwość nie została jeszcze dodana do standardowych i nie może być interpretowana przez wszystkie przeglądarki, w tym celu przed tą właściwością dodawany jest przedrostek z nazwą dostawcy, do którego należy, a w przyszłości, gdy zinterpretowane CSS przeglądarki kodzie, właściwość zostanie poprawnie zrozumiana i będzie spełniać funkcję, do której faktycznie była przeznaczona.

Lista głównych przedrostków dostawców

Podajmy teraz listę głównych prefiksów dostawców, które istnieją ten moment i nam znane.

  • -o-- Przeglądarka Opera
  • -moz-- przeglądarki z rodziny Mozilla (producent słynnej Mozilla Firefox)
  • -SM-- Eksplorator Microsoftu
  • -webkit-- przeglądarki korzystające z silnika Webkit – Google Chrome, Safari
  • -icab-- oficjalny alternatywna przeglądarka Jabłko – Ikab
  • -khtml-- rzadko używany interpreter KHTML dla KDE

Aby użyć prefiksu tego lub innego dostawcy, wystarczy wybrać z listy ten, którego potrzebujesz, dodać go tuż przed właściwością eksperymentalną, która nie została jeszcze wprowadzona do ogólnej specyfikacji i cieszyć się efektem.

Oto na przykład kod, który wyłącza automatyczna transformacja(zmiana rozmiaru) tekstu *:

Regulacja rozmiaru tekstu: brak; -moz-dopasowanie rozmiaru tekstu: brak; -ms-text-size-regulacja: brak; -webkit-dopasowanie rozmiaru tekstu: brak;

*Nieruchomość brak regulacji tekstu ma sens tego używać urządzenia mobilne, których przeglądarki mogą automatycznie zmieniać rozmiar tekstu na stronie, czyniąc go bardziej czytelnym, ale jednocześnie szkodząc układowi i estetyce.

Najpierw opisujemy nieruchomość w ogólna perspektywa- tak jakby było już w specyfikacji i było obsługiwane przez wszystkie przeglądarki, choć jeszcze tak nie jest, ale za jakiś czas najprawdopodobniej nabierze to znaczenia, gdy nieruchomość zostanie zatwierdzona. Następnie dodajemy tę samą właściwość z różnymi przedrostkami dla odpowiednich przeglądarek. Jak widać, nie ma w tym jednak absolutnie nic skomplikowanego ta akcja sprawia, że ​​kod jest znacznie cięższy, ponieważ tak naprawdę zwiększyliśmy liczbę bajtów kodu 4-5 razy, co będzie dość zauważalne w przypadku witryn o wielu podobnych stylach. A sam kod staje się mniej czytelny, bo od wielokrotnego powtarzania tego samego zaczyna się kręcić w oczach i jest po prostu pewne poczucie złego smaku i kiepskiej optymalizacji.

Odchodząc trochę od tematu, chciałbym powiedzieć, że istnieje metoda programowania zwana OOP (programowanie obiektowe). Więc oto jest główne zadanie- redukuj kod za pomocą klas, funkcji itp. Metoda ta istnieje głównie po to, aby wykonanie określonej akcji w różnych częściach programu nie wymagało pisania identycznych fragmentów kodu. W przypadku OOP wystarczy po prostu odwołać się do predefiniowanej klasy i jej funkcji. Ułatwia to pracę oraz znacznie zmniejsza i optymalizuje kod. Prawie to samo dzieje się w przypadku CSS z prefiksami dostawców - gdy ich nie ma, kod wygląda na zoptymalizowany dla wszystkich przeglądarek, a gdy przychodzą z pomocą niecierpliwym programistom, którzy chcą wyprzedzić powolną lokomotywę zwaną W3C, kod zamienia się w bałagan składający się z tych samych linijek skopiowanych 5 razy, różniących się między sobą niezrozumiałymi przedrostkami.

Lepiej oczywiście unikać stosowania prefiksów dostawców i nie próbować wyprzedzać lokomotywy pojedynczej specyfikacji, ale jeśli istnieje nieodparta chęć i pilna potrzeba użycia tej lub innej właściwości CSS, która nie została jeszcze zaakceptowana przez W3C, wtedy oczywiście możesz używać przedrostków, nikt Cię nie uderzy w nadgarstek za to linijką nie będzie. Naszym zdaniem jest to jednak zła forma.

Co się stało Hacki CSS lub prefiksy dostawcy
Jeśli przeglądarka nie obsługuje lub nie rozumie określonego CSS właściwość, jak więc po użyciu hacka nagle zacząć rozumieć tę właściwość?
Dzięki prefiksom dostawców producenci przeglądarek już wprowadzają wersje eksperymentalne CSS3 nieruchomości na własne ryzyko.

Hacki CSS oni są - Prefiksy dostawców, przyrostki dostawców i końcówki dostawców to przedrostki używane przez producentów przeglądarek (dostawców) dla eksperymentalnych właściwości CSS, które nie zostały jeszcze przyjęte w standardzie.

Prefiksy dostawców są dostosowane do konkretnej przeglądarki i pozwalają jej zrozumieć eksperymentalne właściwości CSS, ignorując jednocześnie wpisy przeznaczone dla innych przeglądarek, tj. żadna przeglądarka nie zacznie „przypadkowo” rozumieć właściwości, która nie jest dla niej przeznaczona.

Należy pamiętać, że właściwości z prefiksami dostawcy nie są zgodne ze standardami i nie przejdą walidacji, można je jednak wykorzystać, ponieważ V w zdolnych rękach to jest bardzo potężne narzędzie. Korzysta z tego wiele wiodących studiów RuNet.

Używanie przedrostków dostawców (hacków) jest proste; właściwość CSS jest zapisywana dla elementu w bezpośredniej formie dla przeglądarek, które ją rozumieją. Po nim, oddzielone średnikiem, występuje ta sama właściwość, ale z różnymi przedrostkami dostawców dla różnych przeglądarek. Przeglądarka na podstawie takiego kodu interpretuje tylko te właściwości, które są dla niej zapisane, a ignoruje te, które są napisane dla innych przeglądarek.

Główne powody używania przedrostków dostawców to:

1. Jeśli ta właściwość jest przeznaczona tylko dla konkretnej przeglądarki i nie jest opisana w specyfikacji lub module CSS
2. Jeśli Moduł CSS Właściwość, do której odnosi się ta właściwość, jest w fazie rozwoju przez W3C i nie uzyskała jeszcze statusu Rekomendacji Kandydackiej.
3. Jeżeli właściwość tylko częściowo realizuje funkcjonalność właściwości opisaną w module CSS lub specyfikacji

Dzięki prefiksom dostawców dostawcy przeglądarek wdrażają już eksperymentalne funkcje CSS3 na własne ryzyko.

Koder może już zaimplementować większość funkcji zapewnianych przez CSS3, w tym różne przejścia i animacje bez użycia skryptów, ale z użyciem przedrostków dostawców.

Prefiksy dostawców najpopularniejszych przeglądarek:

Prefiks dostawcy Producent Przeglądarka Silnik przeglądarki
-o-, -op-, -xv-Oprogramowanie OperyOperaPresto
-moz-Projekt MozilliFirefox, SeaMonkey, Camino itp.Gekon
-SM-MicrosoftuInternet Explorer 8Trójząb
-khtml-Projekt KDESafari do wersji 3, Konqueror itp.KHTML
-webkit-JabłkoSafari 3+, GoogleChrome itd.WebKita
-icab-JabłkoiCabWebKita

Przykład pisania:

promień granicy: 15px 0 15px 0; /* Poprawna właściwość zaokrąglania narożników CSS 3, wartość (liczba) określa promień zaokrąglenia */
-moz- promień granicy: 15px 0 15px 0; /* Firefoksa */
-webkit- promień granicy: 15px 0 15px 0; /* Safari, Chrome */
-khtml- promień granicy: 15px 0 15px 0; /* Konqueror */

Od autora: Przedrostek -webkit- jest dziś tak powszechny w CSS, że niektóre witryny nie działają bez niego poprawnie. Chociaż prefiksy CSS dostawców były wyraźną oznaką niezbyt doskonałych właściwości dla programistów w ciągu ostatnich kilku lat, skłoniło to Mozillę do podjęcia desperackiego, ale koniecznego kroku. W przeglądarce Firefox 46 lub 47 (wydanej w kwietniu lub maju 2016 r.) Mozilla planuje wprowadzić obsługę szeregu niestandardowych przedrostków –webkit-, aby poprawić kompatybilność przeglądarki z tym przedrostkiem (nawet na urządzeniach mobilnych).

Pomysł nie jest nowy Microsoft Edge’a obsługuje także różne przedrostki -webkit- dla zapewnienia kompatybilności. Opera zaczęła obsługiwać przedrostki -webkit- w 2012 roku, a następnie przeszła na silnik Webkit Blink. Twórcy W3C i przeglądarek nie planowali używać tego przedrostka przy tworzeniu stron internetowych:

„Oficjalna polityka W3C stanowi, że właściwości eksperymentalne nie powinny być używane w kodzie witryny. Jednak ludzie ich używają, ponieważ chcą, aby ich witryny korzystały z najnowszych technologii i wyglądały fajnie.”— Strona W3C poświęcona optymalizacji treści dla różnych przeglądarek

Jednak programiści zawsze chcą uzyskać dostęp do najnowszych funkcji tak szybko, jak to możliwe. Prefiksy dostawców wywróciły wszystko do góry nogami i zapewniły dominację Webkitowi, ale uważam, że prefiksy miały ogromny wpływ na szybki rozwój Internet.

Metody Mozilli i Microsoftu zaszkodzą tylko większości witryn. Większość witryn będzie już mieć połączone prefiksy –moz-, lub okaże się, że z nowym Aktualizacja Mozilli będzie obsługiwał nowe właściwości bez konieczności wprowadzania zmian. Jako profesjonalni twórcy stron internetowych musimy jednak dać temu spokój i zrozumieć, że niektóre projekty mogą dawać mieszane rezultaty. Być może już wiesz, który z Twoich projektów zostanie zniszczony przez tę aktualizację. Twórcy stron internetowych, czas przemyśleć swoje podejście do prefiksów dostawców i przetestować je w witrynach.

Nowe prefiksy

Mozilla będzie zawierać wiele przedrostków –webkit-. Z tego, co zebrałem, wynika, że ​​Mozilla nie ma zamiaru dopasowywać swojej listy do właściwości Edge. Nie wszystkie właściwości muszą być kompatybilne z silnikiem Mozilli. Wśród przedrostków, które Mozilla zamierza dodać, sądząc po stronie wiki dotyczącej kompatybilności/mobilnej/niestandardowej zgodności, są następujące:

Webkit - dla gradientów

Transformacje Webkit

Przejścia Webkit

Wygląd Webkita

Klip w tle pakietu Webkit

Współczynnik pikseli urządzenia Webkit

Animacja Webkit

Niektóre inne właściwości mogą znajdować się w klatkach kluczowych @-webkit.

Testy w różnych przeglądarkach będą miały kluczowe znaczenie

Jeśli Ty, jako twórca stron internetowych, nie umieściłeś przedrostka -moz-, aby nie testować nowych właściwości CSS w Firefoksie, a termin zbliża się, a klient zmusza Cię do dodania tego przedrostka, to będziesz musiał ponownie przetestować witrynę w przeglądarce Firefox 46 lub 47. Wersje te ukażą się w kwietniu lub maju, więc masz jeszcze trochę czasu.

Aby przetestować swoją witrynę bez czekania na przeglądarkę Firefox 46/47, możesz włączyć te zmiany w przeglądarce Firefox Nightly, ustawiając układ.css.prefixes.webkit w about:config. Jeśli zainstalowałeś Ostatnia wersja Co noc wartość domyślna powinna mieć wartość true. Nie wszystkie zmiany w przedrostkach –webkit- działają jeszcze w przeglądarce Firefox Nightly, ale działają. dobra platforma aby przetestować jak wkrótce będzie wyglądać Twoja witryna. Z poważnym przetestowaniem witryny w Firefox Nightly poczekałbym do marca.

Co ważniejsze, Microsoft Edge już interpretuje i wyświetla przedrostki -webkit- w podobny sposób. Oznacza to, że wszelkie style WebKit w Twojej witrynie są już wyświetlane w przeglądarce, co było zupełnie nieoczekiwane. Jeśli jeszcze nie pracowałeś z tą przeglądarką, zainstaluj system Windows 10 i uzyskaj do niego dostęp, aby testować witryny.

Prefiksy dostawców stopniowo zanikają

Na szczęście prefiksy dostawców stopniowo zanikają, gdy zespoły programistów znajdują nowe rozwiązania. Zespół Chrome/Blink zmienił nieco swoje podejście:

„W przyszłości zamiast domyślnie włączać prefiksy dostawców, zachowamy zwykłe właściwości za flagą „włącz eksperymentalne właściwości platformy internetowej” w about:flags, dopóki te właściwości nie zostaną domyślnie włączone”.— Zespół Chrome/Blink

Zespół Firefoksa poszedł podobną drogą: „Głównym kierunkiem prac w Mozilli jest obecnie odejście od prefiksów dostawców, poprzez ich wyłączenie lub przeniesienie do stanu zwykłych właściwości, jeśli są już stabilne. Taka jest przynajmniej nasza ogólna polityka; indywidualne przypadki zasługują na wyjątki. »— Borys z Mozilli

Microsoft Edge ma również na celu usunięcie obsługi prefiksów: „Microsoft próbuje także pozbyć się prefiksów dostawców w Edge. Oznacza to, że programiści, korzystając ze specjalnych tagów HTML5 lub właściwości CSS, nie będą musieli dodawać specjalnego przedrostka Przeglądarka krawędziowa. Zamiast tego programiści napiszą standardowy kod.”— Możliwość mashowania

Łagodna degradacja przy użyciu przedrostków już nie działa

Odejście od prefiksów dostawców oznacza tylko jedno – technika płynnej degradacji poprzez prefiksy nie jest już opcją. Izolowanie określonych przeglądarek za pomocą prefiksów dostawców (na przykład dla Chrome) nie było celem tych przedrostków; Programistów zawsze zachęcano do używania wszystkich przedrostków (–webkit- do –o-). Jeśli używasz jakiejkolwiek funkcjonalności, która działa na właściwościach z przedrostkami dostawcy, a także zastosowałeś technikę płynnej degradacji w swoim projekcie dla innych przeglądarek, to to już nie działa.

Wniosek

Czasy się zmieniają. Dominacja WebKita była niezamierzona i spowodowała zamieszanie i brak kompatybilności w Internecie. Inne przeglądarki chcą rozszerzyć kompatybilność, dodając przedrostki –webkit-. Stopniowo, wraz ze zniknięciem przedrostków dostawców, ten problem. Programiści powinni sprawdzić, czy użycie przedrostków nie powoduje niepożądanych konsekwencji w przeglądarkach innych niż WebKit.

Tłumaczenie: Wład Merzhevich

Programiści mają relację miłość-nienawiść do prefiksów CSS dostawców, co pozwala im wyprzedzić konkurencję dzięki szczegółowym deklaracjom:

Obraz tła: -webkit-linear-gradient(#fff, #000); obraz tła: -moz-linear-gradient(#fff, #000); obraz tła: -ms-linear-gradient(#fff, #000); obraz tła: -o-linearny-gradient(#fff, #000); obraz tła: gradient liniowy (#fff, #000);

Działa to dobrze w teorii, ale oto, co dzieje się w rzeczywistości.

  • Najczęściej funkcje eksperymentalne są najpierw implementowane w silniku Webkit, ale nie ma gwarancji, że pojawią się w innych przeglądarkach.
  • Czasami ustalenie, czy właściwość z prefiksem dostawcy jest częścią specyfikacji CSS, może być trudne. Niektórzy dostawcy przeglądarek nie standaryzują właściwości.
  • Nawet jeśli właściwość domyślna uległa zmianie, nieprawidłowe właściwości z przedrostkami dostawcy będą nadal obsługiwane. Twój stary kod nadal działa i nie musisz do niego wracać, aby to naprawić.

Coraz częściej będziesz znajdować witryny używające tylko jednego przedrostka -webkit, nawet jeśli inne przeglądarki obsługują tę właściwość lub jest ona powszechnie używana bez przedrostka (np. border-raduis ). Chrome i Safari wyglądają zatem lepiej od konkurencyjnych przeglądarek, a innym producentom nie jest to zachwycone.

Kwestia ta została podniesiona i omówiona na spotkaniu W3C w dniu 7 lutego 2012 r.

Działacze na rzecz standardów uczą ludzi, jak korzystać z Webkit. Z prezentacji zwolenników standardów sieciowych zobaczysz, że zachęcają oni ludzi do używania przedrostka webkit.

Naszym zadaniem jest znalezienie wspólnego rozwiązania.

Obecnie próbujemy dowiedzieć się, ile i które właściwości z przedrostkiem webkit są faktycznie obsługiwane w Mozilli.

Jeśli nie będziemy obsługiwać prefiksów webkit, zamkniemy się przed częścią mobilnego internetu.

Poświęćmy chwilę i zajrzyjmy do tego szamba.

Przeglądarki nieoparte na silniku Webkit będą obsługiwać przedrostek -webkit. Rozwiązanie to jest rozważane przez W3C.

Pomysł najprawdopodobniej zakończy się fiaskiem. Dwie lub więcej implementacji tej samej właściwości nie będą kompatybilne, więc programiści nie będą mogli nigdzie z nich korzystać. Nie będzie zwycięzców, w tym Apple i Google.

Bardziej jednak niepokoją mnie nieodwracalne szkody, jakie nastąpią, jeśli zostanie podjęta taka decyzja. Gdy programiści odkryją, że prefiks webkit działa w przeglądarkach Firefox, IE i Opera, będą oczekiwać, że prefiksy będą działać we wszystkich właściwościach. Przyjęcie samego pakietu Webkit będzie rosło wykładniczo, a producenci przeglądarek będą zmuszeni do wdrożenia przedrostków. W tym momencie właściwości z webkitem staną się de facto standardem niezależnym od specyfikacji W3C. Koniec gry: otwarta sieć Zamknie.

Kto jest winny?

Możemy wskazać palcem kolejne.

Grupa Robocza W3C

Spędza zbyt dużo czasu, czekając, aż standardy sieciowe dojrzeją. Może to być nieuniknione, ale producenci przeglądarek ignorują ten proces.

Producenci przeglądarek

W pośpiechu promującym nowe technologie producentom łatwo jest dodać przedrostek i o nim zapomnieć. Twórcy stron internetowych wymagają więcej informacji: Czy ta właściwość jest rozważana przez W3C i kiedy przedrostek zostanie usunięty?

W idealnym świecie eksperymentalne przedrostki znikałyby, gdy tylko przeglądarka zaczęła obsługiwać standardową właściwość. Producenci nie zrobią tego, ponieważ spowoduje to uszkodzenie witryn, ale mogą zrobić więcej, aby zwiększyć świadomość problemu, na przykład udostępnić narzędzia do wykrywania przestarzałości i wyświetlać komunikaty o błędach w konsoli programisty.

Apple’a i Google’a

Obie firmy są winne promowania przedrostków webkitów tak, jakby były standardową częścią codziennego programowania HTML5. Apple jest oskarżane aktywna praca przeciwko W3C.

Mozilli, Microsoftu i Opery

Inni dostawcy śledzą przeglądarki oparte na Webkit od miesięcy, jeśli nie lat. Dodawanie prefiksów webkitu to absurdalna decyzja. Czas zagrać w swoją grę.

Technolodzy stron internetowych i ewangeliści

Wszyscy kochamy fajne wersje demonstracyjne, ale ewangeliści często zapominają wspomnieć, że funkcje są eksperymentalne i mogą nigdy nie być w pełni obsługiwane przez przeglądarkę. W idealnym przypadku kod powinien działać w co najmniej dwóch przeglądarkach, co oznacza przynajmniej, że wymaganych jest wiele prefiksów dostawców.

Autorzy strony

Jesteśmy zbyt leniwi. Piszemy kod specyficzny dla przeglądarki i chociaż możemy mieć dobre intencje, aby go później naprawić, rzadko to robimy.

Pamiętasz ostatni raz, kiedy programiści skupili się na konkretnej przeglądarki? To był IE6. Dziesięć lat później nadal żyjemy ze spuścizną tej decyzji. Czy naprawdę chcesz, żeby historia się powtórzyła?

Czas działać

Jestem przeciwny przeglądarkom innym niż Webkit, które obsługują przedrostki Webkit. W najlepszym przypadku sprawiają, że przedrostki są bezużyteczne. W najgorszym przypadku zakłóca cały proces normalizacji. Możesz się z tym zgadzać lub nie, ale podziel się swoją opinią ze swoimi współpracownikami za pośrednictwem blogów i Media społecznościowe. Dostawcy W3C i przeglądarek wysłuchają Twojej opinii, wystarczy im ją pokazać.

Następnie przetestuj swoją witrynę w różne przeglądarki. Trochę pełnej wdzięku degradacji nie zaszkodzi, ale zaniedbanie jednego lub więcej nowoczesne przeglądarki to jest złe. Popraw swój kod, w przeciwnym razie Twoja witryna przyczynia się do tego problemu.