Gibt es eine Möglichkeit, browserspezifisches bedingtes CSS in einer * .css-Datei auszuführen? Ich möchte alle Stile innerhalb der gleichen physischen Datei definieren.
Es gibt eine Möglichkeit, dies im IE zu tun, indem Sie Bugs im Browser und @import ausnutzen. Die beste Methode, die ich gesehen habe, ist hier , mit freundlicher Genehmigung von Bobince (und schlug definitiv meine Antwort, heh).
Im Allgemeinen, aber nein. Sogar bedingte Kommentare sind Browser-spezifisch für IE.
Ich habe daran für viele, vor allem aktuelle Browser gearbeitet - die meisten Versionen von Firefox, Webkit und Versionen von Internet Explorer. In letzter Zeit können Versionen von Safari und Chrome getrennt werden. Einige davon habe ich auf browserhacks.com gestellt.
Es ist immer am besten, mit dem besten CSS zu beginnen, das Sie zuerst machen können, aber diese sind verfügbar, wenn Ihre Zeit knapp ist und etwas gebraucht wird ... gestern.
Zur Zeit ist Internet Explorer Version 11, Safari ist Version 8, Firefox ist bis zu 36 in Entwicklungs- / Aurora-Versionen und Chrome ist bis zu 41 in Entwicklungs- / Canary-Versionen zum Zeitpunkt dieser Veröffentlichung.
>Diese sind sehr spezifisch, wenn sie durch das Entfernen von Teilen verändert werden, werden sie nicht richtig funktionieren.
Um eine beliebige Version von Firefox zu erreichen [NICHT auf iOS! Siehe unten]:
%Vor%So erkennen Sie neue Chrome-Versionen:
(DAS IST NICHT FÜR Chrome auf iOS !!! --- Die Entwickler haben die Safari-Engine auf iPads und iPhones anstelle von Chromium oder Mozilla verwendet - also verwenden Sie stattdessen den Safari-Hack für iOS-Versionen dieser Browser)
%Vor%Wenn Sie möchten, können Sie Chrome auch etwas weiter hinten mit einem Kombinations-Hack ansprechen, den ich ausgearbeitet habe (das ist ein seltsames CSS, aber es funktioniert - kopieren Sie es genau so, wie Sie es hier sehen):
%Vor%Das Erkennen neuer Versionen von Safari war genauso schwierig wie das von Chrome, bei dem ein verschachteltes Paar von Medienabfragen verwendet wurde:
%Vor%Safari wurde Ende März 2017 aktualisiert, also funktioniert dieses für 10.1:
%Vor%Für Versionen (7.1 und höher) können Sie dieses verwenden:
%Vor%Um neuere Versionen von Internet Explorer zu erreichen:
%Vor%Dies sind die Grundlagen, aber um mehr meiner Kreationen zu sehen, um viele verschiedene Browserversionen zu erreichen, siehe mein Blog:
oder meine Live-CSS-Hack-Testseiten:
Viel Spaß!
Ich bin mir nicht sicher, wie ich das genau machen könnte. Wir setzen die CSS-Datei basierend auf dem Browser des Benutzers in Codebehind.
Es gibt mehrere Hacks (siehe etwas veraltete Tabelle als Beispiel)
Und es gibt serverseitige Lösungen wie conditional-css für PHP
Aber gut geschriebene, gut strukturierte CSS sollte nicht so viele Hacks brauchen, nur das gelegentliche ie fix.
Ich glaube nicht, dass es einen besseren CSS-Browser-Selektor als den oben erwähnten von Rafael Lima gibt, also werde ich den Link hier nicht hinzufügen oder Beispiele, die in demselben Post sind und von Rafael Limas Seite genommen wurden.
>Der Nachteil ist, dass es nur außerhalb des CSS-Selektors verwendet werden kann und nicht auf bestimmte CSS-Zeilen abzielt, aber es ist robuster als Standardmethoden und einfacher zu lesen.
Tags und Links css cross-browser