Zastanawiam się, czy istnieje sposób na napisanie CSS specjalnie dla Safari przy użyciu tylko CSS. Wiem, że coś tam musi być, ale jeszcze go nie znalazłem.Jakie są specyficzne dla przeglądarki Safari ataki hakerskie CSS?
Odpowiedz
Myślę, że pytanie jest prawidłowe. Zgadzam się z innymi odpowiedziami, ale nie oznacza to, że jest to straszne pytanie. Wcześniej raz musiałem użyć hackowania Safari CSS jako tymczasowego rozwiązania, a później się go pozbyłem. Zgadzam się, że nie powinieneś kierować reklamy na Safari, ale nie zaszkodzi ci wiedzieć, jak to zrobić.
FYI, to tylko siekać skierowany Safari 3, a także cele Opera 9.
@media screen and (-webkit-min-device-pixel-ratio:0) {
/* Safari 3.0 and Opera 9 rules here */
}
Więc czekaj, chcesz napisać CSS dla Safari używając tylko CSS? Myślę, że odpowiedziałeś na własne pytanie. Webkit ma naprawdę dobrą obsługę CSS. Jeśli szukasz stylów tylko dla webkitów, spróbuj here.
Aby przesłać CSS do Safari/WebKit, musisz użyć JavaScriptu lub serwera do sniffingu użytkownika.
Istnieje kilka hacków, których można używać w CSS do kierowania tylko na Safari, np. Umieszczając skrót/funt (#) po średniku, co powoduje, że Safari go ignoruje. Na przykład:
.blah { color: #fff; }
.blah { color: #000;# }
W Safari kolor będzie biały, we wszystkim innym będzie czarny.
Nie należy jednak używać hacków, ponieważ może to powodować problemy z przeglądarkami w przyszłości i może powodować niepożądane efekty w starszych przeglądarkach. Najbezpieczniejszym sposobem jest użycie języka po stronie serwera (takiego jak PHP), który wykrywa przeglądarkę, a następnie wyświetla inny plik CSS w zależności od przeglądarki, z której korzysta użytkownik, lub możesz użyć JavaScript, aby zrobić to samo i przejść na inny plik CSS.
Język po stronie serwera jest lepszym rozwiązaniem, ponieważ nie każdy ma włączoną obsługę JavaScript w przeglądarce, co oznacza, że nie widzą odpowiedniego stylu. Również JavaScript dodaje narzut do ilości informacji, które muszą się załadować, zanim strona zostanie poprawnie wyświetlona.
Safari używa WebKit, który jest bardzo dobry w renderowaniu CSS. Nigdy nie natknąłem się na nic, co nie działa w Safari, ale działa w innych nowoczesnych przeglądarkach (nie licząc IE, który ma swoje własne problemy razem). Proponuję upewnić się, że Twój CSS jest standards compliant, ponieważ problem może leżeć w CSS, a nie w Safari.
To nie działa. –
Prawdopodobnie dlatego, że WebKit został naprawiony, aby sobie z tym poradzić. Ta odpowiedź pochodzi z 2008 roku, kiedy powyższy hack działał w Safari. Fakt, że teraz nie działa, po prostu podkreśla, że nie robiłem haseł, ponieważ nie gwarantują, że zawsze będą działać w przyszłości. –
Dobra uwaga. :-) –
To naprawdę zależy od tego, co chce zrobić. Czy próbujesz zrobić coś wyjątkowego po prostu na safari, korzystając z niektórych funkcji CSS3 lub starasz się, aby witryna była zgodna z przeglądarką?
Jeśli próbujesz utworzyć witrynę zgodną z przeglądarką, polecam napisanie strony, aby wyglądała dobrze w Safari/firefox/opera przy użyciu prawidłowego CSS, a następnie wprowadzanie zmian w IE przy użyciu warunkowego CSS obejmuje w IE. Powinno to (miejmy nadzieję) zapewnić kompatybilność dla przyszłych przeglądarek, które są coraz lepsze w przestrzeganiu reguł CSS i zapewniają kompatybilność z przeglądarką. This is an example.
Używając warunkowych arkuszy stylów, można uniknąć hackowania wszystkich razem i docelowych przeglądarek.
Jeśli szukasz czegoś specjalnego w safari, sprawdź this.
ekran @media oraz (-webkit-min Urządzenie piksela stosunek: 0) {}
Wydaje się, że cel WebKit Chrome (włącznie), ..., czy jest to naprawdę Safari- tylko?
jest również kierowany na chrome teraz - 2016 –
- 1. ASP.NET MVC UpdateModel podatny na ataki hakerskie?
- 2. Jakie są katalogi źródłowe specyficzne dla wersji Scala w sbt?
- 3. Jakie są ograniczenia rekursji js dla przeglądarki Firefox, Chrome, Safari, IE itd.?
- 4. Specyficzne dla strony CSS z Railsami App
- 5. Co to są zmienne specyficzne dla procesu?
- 6. Różne pliki CSS dla każdej przeglądarki?
- 7. Narzędzie do pobierania wstępnego dla przeglądarki Safari?
- 8. Firebug jak wtyczka dla przeglądarki Safari
- 9. Jakie są właściwe opcje specyficzne dla architektury (-m) dla Pentium opartego na Sandy Bridge?
- 10. Wysokość zmiany przeglądarki Safari
- 11. Jakie atrybuty html/css są bezpieczne pocztą?
- 12. Jakie są szerokości urządzenia css dla iPhone7 plus?
- 13. Jakie przeglądarki obsługują Xpath 2.0?
- 14. Jakie są alternatywy dla uwierzytelniania Java?
- 15. Jakie pliki i foldery specyficzne dla Node.JS są zwykle wykluczane przez .gitignore?
- 16. Jakie są alternatywy dla IRB?
- 17. Jakie są alternatywy dla PlayN?
- 18. Program testujący specyficzne dla Javy specyficzne dla Javy
- 19. Jakie przeglądarki pobrać ukrytych obrazów
- 20. Czy instrukcje importu i eksportu są specyficzne dla Angular 2?
- 21. Czy ataki utrwalania sesji w MVC 5 nadal są problemem?
- 22. Jak sortować jak wiadomości hakerskie
- 23. Jakie przeglądarki są obsługiwane przez platformę internetową Meteor?
- 24. Omniture wysyła podwójne dane do przeglądarki Safari
- 25. Błąd animacji CSS w Safari
- 26. Jakie przeglądarki obsługują `overflow-y`?
- 27. Strange Safari CSS bug z CSS gradienty
- 28. CSS siekać na safari 5
- 29. Jakie przeglądarki obsługują HTML 5/CSS3
- 30. Konwersja rozszerzenia przeglądarki Google Chrome do przeglądarki Firefox lub Safari
W jaki sposób ten cel może trafić w Operę? Jest kierowany na Safari i Chrome, które korzystają z silnika WebKit. –
Oryginalne źródło hackowania: http://themechanism.com/blog/2008/01/08/safari-css-hack-redux/. Dodatek: Obsługiwano Operę 9, ale nie Operę 9.5. Ten hack został pierwotnie pomyślany w 2007 roku, więc prawdopodobnie jest dość nieaktualny w 2011 roku. –