2010-06-15 18 views
5

Soweit ich weiß, die bedingten Kommentare werden nur für verschiedene Versionen von IE unterstützt.CSS bedingte Kommentare für andere Browser außer IE?

Wie können wir bedingte Kommentare auch für andere Browser bereitstellen?

Wenn ja, wie? Wenn nein, was könnte die beste Alternative sein?

+5

Ich würde vorschlagen, für einen Browser zu bauen, der Standards W3C.org etc. entspricht. Dann verwenden Sie die bedingten Kommentare, um die Seite für zB zu reparieren? – Sphvn

+0

Bedingte Kommentare sind HTML, nicht CSS. Es ist keine bedingte Kommentarsyntax für CSS bekannt (obwohl es eine bedingte Kompilierung für JScript gibt). Es ist alarmierend, dass keine der Antworten darauf hingewiesen hat. – BoltClock

+0

@ BoltClock's Einicorn, Nicht Jeder weiß alles. Ich habe es retagged. – Starx

Antwort

0

Überprüfen Sie die . Ich benutze es auf meiner Website, Sie schreiben im Grunde nur das CSS und sagen, welchen Browser Sie anvisieren soll. Ich benutze es auf meiner Website und es funktioniert super!

Ich hoffe, es hilft.

+0

nicht ganz die Antwort, die ich suche, aber es wird funktionieren – Starx

1

Soweit ich weiß, sind CSS bedingte Anweisungen ein IE exklusive. Sie sollten nicht für andere Browser benötigt werden, da sie den Standards einigermaßen gut entsprechen. Warum würden Sie sie brauchen?

+0

Ich weiß, andere Browser folgen ziemlich gleichen Standards, aber keine exakte Übereinstimmung. – Starx

+0

@Starx Browser sind anders Sie können JavaScript verwenden, um zu versuchen, diese zu fangen oder Sie müssen nur verstehen, gibt es Unterschiede zwischen den Browsern hängt davon ab, wie viel Zeit und Mühe Sie bereit sind, zu setzen. – Sphvn

+0

@Starx sonst können Sie Ihre Seite entwerfen ohne Styling, das Unterschiede zwischen den Browsern verursacht Ich meine, es gibt Möglichkeiten, aber nicht einfach oder effizient ... Das CSS-Browser-Selector-Plugin. Ist wahrscheinlich eine der einfachsten Möglichkeiten, es mit Skript zu tun. – Sphvn

3

CSS Conditional Comments are meant only for IE.. Allerdings können Sie Firefox erkennen:

Wenn der folgende Code nicht ausschließlich Firefox erkennen ..

<!--[if !IE]> 
    ...statements... 
<![endif]--> 

Use "Downlevel-enthüllt Conditional Comments", um es arbeiten ...

<![if !IE]> 
    ...statements... 
<![endif]> 

Beispiel zu Firefox erzwingen eine exklusive CSS zu verwenden ..

<![if !IE]> 

    <link href="css/ff.css" rel="stylesheet" type="text/css" /> 

<![endif]> 

gesagt haben, dass Sie shou Ich mache mir keine Sorgen über andere Browser, die standard-compliant sind.

1

Es gibt keine bedingten Kommentare für andere Browser nur IE und Versionen von IE.

Sie können Javascript verwenden, um andere Browser zu überprüfen und Stile wie folgt anzuwenden.

Sie können eine Überprüfung für den Browser nicht IE mit bedingten Kommentaren, sondern nur keine.

Ich würde vorschlagen, zu besuchen W3.org und bauen Ihre Website mit einem standardkonformen Browser funktionieren dann verwenden Sie die bedingten Kommentare, um zu beheben, wie es in IE lädt, wenn es Probleme gibt (gibt es normalerweise).

0

Wie in anderen Antworten erwähnt, gibt es keine bedingten Kommentare für andere Browser als IE. JS-Erkennung ist der Weg, um hier zu gehen.

Wenn Sie wollen, dass die kommentierten Elemente haben den IE Zustand und anderer Browser beeinflussen dann dies einfach tun:

<!--[if gt IE 8]><!--> 
<link href="sample.css" rel="stylesheet" type="text/css" /> 
<!--><![endif]--> 

Wie Sie aus der Syntax sehen können das Verbindungselement hervorgehoben wird nicht kommentiert, so wird es sein sichtbar für Nicht-IE-Browser und für IE wird es der Bedingung folgen (größer als IE 8 in diesem Beispiel).

0

Ich wünschte, es gäbe eine Lösung, vor allem für E-Mail-Rendering-Engines. Es gibt sogar bedingte Kommentare für Outlook, aber keine für Google Mail.

<!--[if gte mso 9]> 

<![endif]-->