Frage

Ich frage mich, ob es eine Möglichkeit gibt, CSS speziell für Safari zu schreiben, nur mit CSS. Ich weiß, dass es etwas sein da draußen, aber ich habe es noch nicht gefunden.

War es hilfreich?

Lösung

Ich denke, die Frage ist gültig. Ich stimme mit den anderen Antworten, aber es bedeutet nicht, es ist eine schreckliche Frage. Ich habe immer nur ein Safari CSS Hack einmal als eine temporäre Lösung zu verwenden hatte und später wurde es los. Ich bin damit einverstanden, dass Sie sollten nicht nur Safari Ziel haben, aber nicht schaden zu wissen, wie es zu tun.

FYI, dieser Hack zielt nur Safari 3 und auch Ziele Opera 9.

@media screen and (-webkit-min-device-pixel-ratio:0) {
   /* Safari 3.0 and Opera 9 rules here */
}

Andere Tipps

Es gibt einige Hacks Sie in der CSS können nur Safari, wie Putting einen Hash / Pfund (#) nach dem Semikolon zum Ziel, das Safari, es zu ignorieren verursacht. Zum Beispiel

.blah { color: #fff; }
.blah { color: #000;# }

In Safari wird die Farbe weiß sein, in alles andere wird es schwarz.

Sie sollten jedoch nicht Hacks verwenden, da es Probleme mit Browsern in der Zukunft führen könnte, und es kann unerwünschte Effekte in älteren Browsern haben. Der sicherste Weg ist entweder eine serverseitige Sprache (wie PHP) zu verwenden, die den Browser erkennt und dann auf dem Browser je eine andere CSS-Datei dient bis der Benutzer verwenden, oder Sie können JavaScript verwenden, das gleiche zu tun, und wechseln Sie zu eine andere CSS-Datei.

Die serverseitige Sprache ist die bessere Option hier, da nicht jeder JavaScript in ihrem Browser aktiviert hat, was bedeutet, würden sie den richtigen Stil nicht sehen. Auch JavaScript fügt einen Overhead auf die Menge an Informationen, die, bevor die Seite laden, muss korrekt angezeigt.

Safari nutzt WebKit, die mit Rendering CSS sehr gut. Ich habe noch nie über etwas kommen, die nicht in Safari funktioniert, aber funktioniert in anderen modernen Browsern (ohne IE, die seine eigene Fragen alle zusammen hat). Ich würde vorschlagen, dass Ihr CSS machen wird Standards kompatibel , wie das Thema in der CSS liegt und nicht in Safari.

So warten, möchten Sie CSS für Safari schreiben, nur mit CSS? Ich glaube, Sie Ihre eigene Frage beantwortet. Webkit hat wirklich gute CSS-Unterstützung. Wenn Sie webkit nur suchen Designs, versuchen hier .

Sie müßten JavaScript oder Ihren Server verwenden, um Sniffing User-Agenten zu tun, CSS zu senden speziell auf Safari / WebKit.

  

@media Bildschirm und (-webkit-min-device-Pixel-Verhältnis: 0) {}

Das scheint webkit (einschließlich Chrom) zum Ziel ... oder ist das wirklich Safari-only?

Das hängt davon ab, was Sie zu tun versuchen. Versuchen Sie, etwas Besonderes nur in Safari mit einigen der CSS3-Funktionen enthalten zu tun oder versuchen Sie eine Website Cross-Browser-konform zu machen?

Wenn Sie versuchen, eine Website Cross-Browser-konform machen würde ich empfehlen, die Seite zu schreiben in Safari gut aussehen / firefox / Oper korrekte Verwendung von CSS und dann Änderungen für IE machen mit bedingten CSS im IE enthält. Dies sollte (hoffentlich) geben Sie Kompatibilität für die Zukunft der Browser, die bei Anschluss an die CSS-Regeln besser bekommen und bieten Cross-Browser-Kompatibilität. Dies ist ein Beispiel.

Mit dem bedingten Sheets verwenden Sie Hacks alle zusammen und Ziel-Browser vermeiden.

Wenn Sie suchen etwas Besonderes in Safari tun Besuche dieser .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top