CSS3 schon standardisiert?

Hallo bplaced’ler,

um eine Webseite zu testen, habe ich mir lokal ein Debian in die Virtuelle gepackt. Jetzt greife ich mit dem Handy drauf zu und stelle fest, dass der Standard-Browser von Android 4.1 die Seite falsch darstellt.

background-color: #FFFFFF; background-image: -webkit-gradient( linear, left top, left bottom, color-stop(0, #0088FF), color-stop(0.5, #FFFFFF) ); background-image: -o-linear-gradient(bottom, #000000 0%, #FFFFFF 50%); background-image: -moz-linear-gradient(bottom, #000000 0%, #FFFFFF 50%); background-image: -webkit-linear-gradient(bottom, #000000 0%, #FFFFFF 50%); background-image: -ms-linear-gradient(bottom, #000000 0%, #FFFFFF 50%); background-image: linear-gradient(to bottom, #000000 0%, #FFFFFF 50%);
Das ist ein Beispiel für einen Farbverlauf von oben nach unten mit “von schwarz nach weiß”. Bei Opera, Firefox und Internet Explorer verläuft er auch von oben nach unten. Auf dem Handy ist jedoch schwarz unten? Ich habe auch schon mit “180deg” probiert und da gehts auch wieder nur auf dem Handy von rechts nach links, auf den normalen Browsern passts.
Ups da fällt mir ein… Ist das eine Eigenheit vom Chrome?

Daher die Frage an euch: Ist CSS3 bereits ein Standard, den man verwenden kann oder soll ich doch wieder zu einer Grafik greifen für solche Anwendungen?

Wenn man sich das so anschaut, sollte das mittlerweile überall funktionieren:
caniuse.com/#feat=css-gradients
Auch der Android Browser von 4.1 sollte CSS Gradients mit dem webkit Präfix unterstützen.

Es sind ganz wenige Module von CSS3 bereits Empfehlungen.
Was über CSS2.1 hinausgeht und eine Empfehlung ist:
a) CSS-Farbmodul
b) CSS-Namensräume
c) Selektoren auf Niveau 3
d) Medienanfragen (media queries)

Und wenn du da Präfixe wie ‘’-webkit-’ verwendest, ist das nur insofern standardisiert, als es eine standardisierte Methode ist, etwas zu kennzeichnen, was nicht standardisiiert werden wird ;o)
Immerhin, das Modul, zu welchem der Kram gehört, ist bereits als ‘Candidat recommendation’ in der Testphase, wenn das nicht wieder zurückgestuft wird, könnte das also in näherer Zukunft (in den nächsten Jahren) wirklich was werden ;o)
Das kannst du doch aber alles selbst auf der entsprechenden Seite vom W3C einsehen:
w3.org/Style/CSS/current-work

Für deinen gewünschten Farbverlauf kannst du einfach eine simple SVG-Graphik nehmen, da kommt der Kram mit dem Graidenten auch her, nur ist das da schon seit vielen Jahren ein Standard und seit einigen Jahren kann man bei den üblichen Verdächtigen Darstellungsprogrammen auch SVG per CSS als Hintergrundgraphik verwenden. Wenn man unbedingt will, kann man das sogar mit base64 kodieren und mit dem Pseudoprotokoll data: direkt in die CSS-Datei schreiben, was auch schon seit Jahren problemlos funktioniert und standardisiert ist. Der entsprechende CSS-Entwurf vereinfacht das Prozedere nur etwas, wesentlich Neues bekommt man damit aber nicht hin.

@heavygale: Ja, dieser Meinung war ich auch. Der Firefox auf dem Android stellt den Verlauf richtig dar, nur der Chrome nicht.

@hoffmann: Schöne Antwort, mal wieder :hail: . Vielen Dank
Ja, diese Präfixe mit „-“ sollten für die alten Browser sein? Aber das ist eine gute Idee. SVG, daran habe ich gar nicht gedacht. Vielen Dank, ich glaube, ich informiere mich in Zukunft vorher auf der Seite der w3c, dann passieren solche unvorhergesehenen Verhaltensweisen nicht. Es lebe der Standrad ?oder die Standardisierung?

‚Candidat recommendation‘, ok du hast Recht: Dieselbe Frage darf ich in 10 Jahren wieder stellen.

‘candidate recommendation’ ist schon ziemlich gut, allerdings in dem Falle bereits seit April 2012.
Wenn ich das richtig interpretiere, hapert es derzeit an einer fehlenden/unvollständigen Testsuite, zudem sind explizit ‘features at risk’ angegeben, was darauf hinweist, daß es zumindest bei diesen Implementierungsprobleme gibt.
Leute, die Übersichten über experimentelle Implementierungen anbieten, testen nicht notwendig systematisch (hat das W3C früher auch meist nicht gemacht), daher kann man sich meist nicht darauf verlassen, wenn irgendwo steht, daß das interpretiert wird, das heißt dann oft nur, daß ‘irgendwas’ passiert, wenn die Eigenschaft notiert wird - ob komplett richtig oder nicht, ist meist eine knifflige andere Frage ;o)

Sollte irgendein Programmanbieter die Interpretation von dem Kram nicht mehr als experimentell,
sondern als brauchbar ansehen, kann dieser alles, was in einem ‘candidate recommendation’ steht, ohne Präfix anbieten. Umgedreht, alles, was mit Präfix läuft, ist instabil, experimentell und kann insbesondere in Funktion und Notation vom ‘candidate recommendation’ beliebig abweichen - auch in jeder neuen Version eines Darstellungsprogrammes. Derartige Eigenschaften mit Präfix sind also wirklich nur zum Herumprobieren geeignet, nicht für normale Veröffentlichungen.
Da die Funktion anders sein kann als bei aktuellen Programmen, bringt es daher auch wenig, es noch mit Präfix für alte Programmversionen anzubieten, wenn man bei denen nicht im Einzelnen genau getestet hat, was die bei welcher Version genau damit machen.

[quote=“hoffmann”]‘candidate recommendation’ ist schon ziemlich gut, allerdings in dem Falle bereits seit April 2012.
Wenn ich das richtig interpretiere, hapert es derzeit an einer fehlenden/unvollständigen Testsuite, zudem sind explizit ‘features at risk’ angegeben, was darauf hinweist, daß es zumindest bei diesen Implementierungsprobleme gibt.
Leute, die Übersichten über experimentelle Implementierungen anbieten, testen nicht notwendig systematisch (hat das W3C früher auch meist nicht gemacht), daher kann man sich meist nicht darauf verlassen, wenn irgendwo steht, daß das interpretiert wird, das heißt dann oft nur, daß ‘irgendwas’ passiert, wenn die Eigenschaft notiert wird - ob komplett richtig oder nicht, ist meist eine knifflige andere Frage ;o)

Sollte irgendein Programmanbieter die Interpretation von dem Kram nicht mehr als experimentell,
sondern als brauchbar ansehen, kann dieser alles, was in einem ‘candidate recommendation’ steht, ohne Präfix anbieten. Umgedreht, alles, was mit Präfix läuft, ist instabil, experimentell und kann insbesondere in Funktion und Notation vom ‘candidate recommendation’ beliebig abweichen - auch in jeder neuen Version eines Darstellungsprogrammes. Derartige Eigenschaften mit Präfix sind also wirklich nur zum Herumprobieren geeignet, nicht für normale Veröffentlichungen.
Da die Funktion anders sein kann als bei aktuellen Programmen, bringt es daher auch wenig, es noch mit Präfix für alte Programmversionen anzubieten, wenn man bei denen nicht im Einzelnen genau getestet hat, was die bei welcher Version genau damit machen.[/quote]

Ist nur nervig das Thema. Jeder Browser macht was er will und einen internationalen Standart wirds vll in 20jahren geben

Natürlich kann man sich auf den Hardcore-Puristen-Standpunkt stellen, so wie Herr Hoffmann das tut … ob’s auch sinnvoll ist, ist eine ganz andere Frage :slight_smile:

Kaum ein heutiger Webstandard hätte sich überhaupt zu dem entwickelt, was er heute ist, wenn sich die absolute Mehrheit der Webentwickler auf diesen Standpunkt stellen würde, und immer gesagt hätte, dass neue Features nicht eingesetzt werden dürfen/sollten, solange sie nicht zu absolut 100% festgezurrt und als verabschiedeter Standard in Zement gegossen sind …

Aber das tut natürlich die Mehrheit nicht – sondern sie wägt ab, was man schon einsetzen kann und womit man ggf. besser noch etwas wartet.
Und ein maßgeblicher Punkt hierbei ist – macht es meine Seite „kaputt“ bzw. unbenutzbar, wenn ein Feature nicht so unterstützt wird, wie ich mir das erhoffe, bzw. wenn sich an der Implementierung noch mal was ändern sollte? Und gerade in Bezug auf solche optischen Spielereien wie einen simplen Farbverlauf wäre es natürlich absolut lächerlich, das zu behaupten.

Ob und wie wichtig dir in diesem konkreten Fall ist, dass auch der Default-Browser auf Android 4.1 das richtig darstellt, musst du entscheiden …

Btw., an diversen Stellen im Web finde ich die Info, dass Android 4.1 die -webkit-linear-gradient Syntax unterstützen sollte. Ich würde mal probieren, -webkit-gradient komplett rauszuwerfen, vielleicht bringt das den Browser ja durcheinander …

[quote=“chrisb”]Natürlich kann man sich auf den Hardcore-Puristen-Standpunkt stellen, so wie Herr Hoffmann das tut … ob’s auch sinnvoll ist, ist eine ganz andere Frage :slight_smile:

Kaum ein heutiger Webstandard hätte sich überhaupt zu dem entwickelt, was er heute ist, wenn sich die absolute Mehrheit der Webentwickler auf diesen Standpunkt stellen würde, und immer gesagt hätte, dass neue Features nicht eingesetzt werden dürfen/sollten, solange sie nicht zu absolut 100% festgezurrt und als verabschiedeter Standard in Zement gegossen sind …

Aber das tut natürlich die Mehrheit nicht – sondern sie wägt ab, was man schon einsetzen kann und womit man ggf. besser noch etwas wartet.
Und ein maßgeblicher Punkt hierbei ist – macht es meine Seite „kaputt“ bzw. unbenutzbar, wenn ein Feature nicht so unterstützt wird, wie ich mir das erhoffe, bzw. wenn sich an der Implementierung noch mal was ändern sollte? Und gerade in Bezug auf solche optischen Spielereien wie einen simplen Farbverlauf wäre es natürlich absolut lächerlich, das zu behaupten.

Ob und wie wichtig dir in diesem konkreten Fall ist, dass auch der Default-Browser auf Android 4.1 das richtig darstellt, musst du entscheiden …

Btw., an diversen Stellen im Web finde ich die Info, dass Android 4.1 die -webkit-linear-gradient Syntax unterstützen sollte. Ich würde mal probieren, -webkit-gradient komplett rauszuwerfen, vielleicht bringt das den Browser ja durcheinander …[/quote]
Naja ich setz yaml ein also das ist ein css framework, wird auch ab und zu mal gewartet und divierse Probleme mit verschiedenen Browser umzugehen immer dieses rumgekrebse mit mozilla ie und den anderen scheiß was es so gibt…

Ersparrt einiges an Arbeit und vorallem an Nerven!