Kürzlich sagte ich dies, als ich nach neuen Tools (z. B. Edge) zum Erstellen von CSS-Animationen gefragt wurde.
Leere Divs, die nur zu Styling-Zwecken verwendet wurden, waren vor CSS-Animationen nicht semantisch und eine schlechte Idee, und sie sind auch jetzt noch eine schlechte Idee.
Dazu stehe ich. Ich habe das Gefühl, wir haben als Branche einen langen Weg zurückgelegt, um alle vom semantischen Markup zu überzeugen. Tun Sie dies und ernten Sie die großartigen Belohnungen für Geschwindigkeit, Zugänglichkeit, Wartbarkeit und SEO.
Dann kommt etwas Neues und Glänzendes, und das Erste, was wir tun, ist, unsere eigenen Regeln über Bord zu werfen. „Oooo, ich kann einen Vogel über den Bildschirm fliegen lassen?“ Bestellen Sie mir ein paar dieser leeren Divs mehr! Ich bin sicher schuldig. Es fühlt sich nicht wie eine große Sache an, wenn man es tut, besonders in Maßen.
Aber CSS-Animationen sind gekommen, um zu bleiben. Es werden allgemeine Best Practices entstehen, welche Arten von Dingen wir dafür verwenden sollten, wie viel zu viel ist, wie man sie semantisch angeht, wie man Fallback-Inhalte anbietet usw. Ich dachte, ich werfe eine kleine Idee ein, die ich hatte.
Betrachten wir, was Animationen für ein Design tun. Sie können ihm Stimmung verleihen. Sie können ihm Haltung verleihen. Wie andere Aspekte des Designs beeinflussen sie, wie ein Benutzer sich über diese Seite fühlt. Aber sie tun dies nur für sehende Benutzer. Das leere Div tut nichts davon für nicht sehende Benutzer. Es ist nur nutzloser Ballast.
<div class="moon">
<!-- I offer nothing to non-sighted users -->
</div>
Was wäre, wenn wir dieses leere Div nehmen und versuchen würden, für nicht sehende Benutzer all das zu erreichen, was wir für unsere sehenden Benutzer erreichen. Einfach beschreibenden Text in diese Divs einzufügen, könnte es für uns erledigen. Ähnlich wie ein alt-Tag für Bilder, aber tatsächlicher Inline-Inhalt, der gelesen/genossen werden soll, so wie die Animation gesehen/genossen werden soll.
Vielleicht ist unsere Animation ein aufgehender Mond, und während er aufgeht, färben sich Himmel und Erde schwarz. Wir brauchen zwei Elemente, um unsere Animation zu realisieren, und vielleicht enthalten sie den Text von CCRs Bad Moon Rising.
<div class="moon">
I see a bad moon rising
I see trouble on the way
</div>
<div class="ground">
I see earthquakes and lightnin’
I see bad times today
</div>
Die CSS versteckt diesen Text vor dem Blick und ruft die Keyframe-Animation auf.
.ground, .moon {
text-indent: -9999px;
overflow: hidden; /* text-indent without this can cause choppy animation */
}
.ground {
-webkit-animation: ground-to-black 5s ease;
-moz-animation: ground-to-black 5s ease;
-o-animation: ground-to-black 5s ease;
animation: ground-to-black 5s ease;
}
.moon {
-webkit-animation: rising-moon 5s ease;
-moz-animation: rising-moon 5s ease;
-o-animation: rising-moon 5s ease;
animation: rising-moon 5s ease;
}
/* Plus various keyframe declarations */
Beachten Sie die Namen dieser Keyframe-Animationen. Das ist eine weitere Diskussion, die im Sinne von „semantischen Animationen“ geführt werden muss. Ein anderes Mal.
Dieser Text könnte alles sein, was mit der Animation zu tun hat. Er könnte die Animation wörtlich beschreiben. Er könnte ein Gedicht sein, das die gleiche Emotion wie die Animation hervorruft. Er könnte ein <audio>-Element sein.
Moment mal, du schicker Designer-Junge.
Ich benutze keine Screenreader, daher kann ich nicht beurteilen, ob das eine gute Idee ist oder nicht. Ich stelle mir vor, dass es bereits genug Ballast gibt, durch den man sich kämpfen muss, und dass dies trotz guter Absichten nur ein weiteres Hindernis auf dem Weg zum „echten Inhalt“ sein könnte.
Ich schätze, es ist wie bei allem anderen auf der Welt: Es kommt darauf an.
Gute Punkte, denen ich voll und ganz zustimme.
Vor nicht allzu langer Zeit besuchte ich Andy Clarkes Vortrag „Hardboiled“, und er berührte dasselbe Thema. Er schlug vor, die Szenen in einer Liste (möglicherweise einer geordneten) zu beschreiben, was eine perfekt verständliche Erfahrung für nicht sehende Benutzer bot.
Außerdem fühlt es sich einfach richtig an!
Geben Sie mir unbegrenzte Pseudo-Element-Freiheit, oder geben Sie mir den Tod!
Zweitens!
Falls sich jemand fragt, wovon Ryan spricht: Ich glaube, er meint, etwas wie
body:after(2)verwenden zu können und beliebige Elemente auf der Seite hinzuzufügen, die animiert werden können, ohne sich um die Beeinträchtigung der Semantik kümmern zu müssen.Ich träume von dem Tag, an dem Pseudo-Elemente unbegrenzt sind.
Ich träume von dem Tag, an dem wir nur für Websites bauen können, die Pseudo-Elemente unterstützen.
Ich träume von dem Tag, an dem alle Browser Übergänge für Pseudo-Elemente unterstützen.
Ich träume von Pseudo-Elementen.
Wie ich träume.
@Larry… gute Mischung aus Haiku und Chiasmus. Gut geschrieben!
…zum Träumen – ja, da liegt der Hase im Pfeffer.
Guter Beitrag, aber obwohl ich Ihre Punkte zustimme, habe ich mich nie wohlgefühlt, Text mit „text-indent“ zu verstecken. Was, wenn mein Bildschirm 9999 Pixel breit wäre? Klingt dumm und nicht sehr wahrscheinlich, aber ich habe es aus diesem Grund nie als elegante Lösung angesehen. Außerdem ist es wahrscheinlich nicht sehr gut für SEO.
Was ist mit dem Entfernen mit JS? Haben blinde Browser JS aktiviert?
Ja, es ist definitiv hackelig, aber es funktioniert, und der Tag, an dem ich Code für einen 9999 Pixel breiten Bildschirm aktualisieren muss, wird ein schöner Tag sein.
Soweit ich weiß, im Allgemeinen ja.
Ich muss Chris hier zustimmen. Zusätzliche Divs zum Markup hinzuzufügen, macht es nicht semantisch falsch, aber es bricht die Trennung von Inhalt und Design und fördert unordentliches Markup.
Es ist, als gäbe es immer einen Krieg zwischen denen, die HTML an seinem Platz halten wollen (Markup), und denen, die es zu einer Art Datenablage für Skripting- und Designbemühungen machen wollen. HTML wurde nicht mit der Absicht erstellt, komplexe Animationen zu erstellen.
Aus meiner persönlichen Sicht sollten Animationen entweder mit Video oder mit dem Canvas-Element durchgeführt werden – das ist einer der Gründe, warum es erstellt wurde, und ich bin überrascht, dass niemand es erwähnt hat. Tatsächlich bin ich überrascht, dass Edge es nicht benutzt; es würde saubereres HTML erzeugen und die Trennung von Markup und Programmierung aufrechterhalten.
Eine bessere Lösung für das Verstecken von Text durch
text-indentwäre die Verwendung von -9999em, da dies mit dem Text und der Zoomstufe skaliert.Klingt so, als würden Sie die allgemein akzeptierte und meist falsche Definition von HTML-Semantik verwenden.
DIV- und SPAN-Elemente haben keinen semantischen Wert. Sie sind völlig neutral (außer für die gelegentliche Verwendung eines lang-Attributs) und in der HTML-Spezifikation als Styling- und Skripting-Hooks definiert. Das Hinzufügen von tausend DIVs zu einem bereits semantischen Dokument fügt der Semantik des Dokuments nichts hinzu oder zieht nichts ab. Die Verwendung leerer Elemente (insbesondere DIV oder SPAN) für dekorative Zwecke ist nicht semantisch falsch. Die Begrenzung der Verwendung dieser Elemente macht Ihren Code schlanker, aber nicht semantischer.
Das gesagt, es ist eine gute Idee, unsere Verwendung dieser Styling-Hooks kritisch zu betrachten. Einige grundlegende Fragen, die mit HTML-Semantik zusammenhängen:
– Verwende ich ein DIV oder SPAN, wenn ein anderes Element besser geeignet wäre? (Dennoch seien Sie konservativ. Das Ersetzen jeder Sequenz von DIV-Containern durch eine ungeordnete Liste ist keine bessere Semantik, es ist lautere Semantik. Alles ist eine Liste, wenn wir die Definition von „Liste“ zu weit treiben.)
– Verwende ich ein leeres DIV oder SPAN mit CSS-Hintergründen, generiertem CSS-Inhalt oder Skripting, das eine Bedeutung vermittelt? Kann ich einige oder all diese Bedeutung als Text in das HTML-Dokument aufnehmen?
Wir sollten uns von dogmatischen oder einfach falschen Definitionen der HTML-Semantik fernhalten. Ihr Artikel hat großartige Punkte in Bezug auf Beispiele, aber pauschale Aussagen wie „Leere Divs, die nur zu Styling-Zwecken verwendet werden [sind schlecht]“ sind einfach falsch.
Stimme vollkommen zu. Man kann übertreiben, wenn man Dinge wie leere Divs als „falsch“ bezeichnet, und viele tun das.
Außerdem hat jemand jemals den mythischen blinden Surfer im Web gesehen oder davon gehört?
Ich verstehe Ihren Punkt, halte aber an meinem fest. Vielleicht gibt es eine offizielle Definition von Semantik, die ich verletze, aber wie das Web selbst sind Definitionen flexibel und können sich an neue Verwendungen und Bedeutungen anpassen.
Wo auch immer ein leeres oder extra-umschließendes Div verwendet wird, nenne ich es nicht-semantisch.
Hmmm… mein vorheriger Kommentar wurde im falschen Thread gepostet. Entschuldigung.
Eigentlich bin ich mir nicht sicher, ob Ihr Beispiel gut ist. Ich bin vorsichtig bei Versuchen, „Stimmungs“-Informationen in Text zu transkribieren. Dasselbe könnte ich für Werte der Unternehmensidentität und alle anderen Informationen sagen, die ein Design zu vermitteln versucht.
Ich meine, wenn Sie eine schöne, stimmungsvolle Animation auf einer Seite haben und diese als poetischen Text transkribieren möchten, in Ordnung. Aber die meisten Designer werden sich nicht die Mühe machen, und Benutzer, die die Textversion erhalten, interessieren sich vielleicht nicht dafür oder halten es sogar für eine Belästigung (lauter Text, der sie von ihrem Ziel auf der Seite ablenkt, nämlich vielleicht etwas nützliche Informationen zu erhalten oder ein Formular auszufüllen und zu senden). Es ist wahrscheinlich schön für eine persönliche/poetische Website, aber für die meisten tatsächlichen Arbeiten, die wir tun, nutzlos.
Zufällige Idee: Wenn Sie denken, dass einige Design-/Animationsteile tatsächlich Inhalt sind und auch als Text verfügbar sein sollten, gehen Sie die Extrameile und bieten Sie diesen Text allen Benutzern an.
Schließlich sind Ihre Textinhalte für Benutzer nicht verfügbar, wenn CSS-Stile angewendet werden, aber a) der Browser Animationen nicht unterstützt oder b) Bilder aus irgendeinem Grund nicht geladen werden (z. B. Netzwerkprobleme). Dies ist einer der häufigen Fallstricke der negativen
text-indent-Technik, die besser ist alsdisplay:none, aber immer noch Barrierefreiheitsprobleme hat. Leider hat HTML nur sehr wenige Fallback-Mechanismen. (Dasalt-Attribut ist eines, aber es ist sehr begrenzt, und dasobject-Element sollte eines bieten, war aber in HTML4 schlecht definiert und die Implementierungen in Browsern fehlen; schließlich setzt HTML5 diese Tradition mangelhafter Fallback-Mechanismen fort, indem es den Fallback-Inhalt vonaudio- undvideo-Elementen nicht preisgibt, selbst wenn die beabsichtigte Medienressource nicht verfügbar ist.)Ich neige dazu, fvsch in Bezug auf die Stimmung zuzustimmen: Es ist selten vorteilhaft, sie für Screenreader zu „semantisieren“. Typischerweise wäre das ärgerlich. Ich denke, hier geht es mehr um Geek-Cred für den Designer, als um die Hilfe für Benutzer.
...und ich denke, Sie haben Recht: Es ist nicht-semantisch. Aber ich würde es nicht unsemantisch nennen. Meine vorgeschlagenen Definitionen:
Semantisches Markup: Markup, das gute Wahl von HTML-Elementen trifft, um dem Dokument (maschinenlesbare) Bedeutung hinzuzufügen.
Unsemantisches Markup: Markup, das schlechte Wahl von HTML-Elementen trifft, die ein weniger bedeutungsvolles (oder sogar ein irreführendes) Dokument erstellen.
Nicht-semantisches Markup: Markup, das keinen Einfluss auf die Bedeutung des Dokuments hat.
Schöne Definitionen. Ich werde sie vielleicht in Zukunft verwenden. Ihre Definition für „semantisches Markup“ stimmt mit der HTML5-Definition überein. Die anderen beiden sind ziemlich logisch und machen eine wichtige Unterscheidung.
Die Probleme, die wir bei Diskussionen über Semantik in HTML haben, sind, dass alle sagen, dass semantisches HTML eine gute Praxis ist, aber es gibt ziemlich viele Verwirrungen:
1. Wir neigen dazu zu denken, dass, da semantisches Markup gut ist, Markup, das nicht semantisch ist, notwendigerweise schlecht ist. Nicht ganz. Unsemantisches Markup ist schlecht, nicht-semantisches Markup ist neutral. (Ich schätze, extremes nicht-semantisches Markup ist chaotisch neutral?)
2. Wir neigen dazu, das Prinzip „semantisches HTML ist gut“ auf alles anzuwenden, was beliebig als „semantisch“ bezeichnet werden könnte. Zum Beispiel nennen wir manchmal HTML-Klassennamen „semantisch“, wenn sie den Inhalt beschreiben, aber das ist nur eine Namenskonvention, und es gibt Argumente, dass zumindest in einigen Situationen Klassennamen, die den Inhalt beschreiben, eine schlechte Praxis sind (siehe OOCSS und „modulare CSS“-Prinzipien).
Nicht-semantisches Markup ist an bestimmten Stellen definitiv angebracht, und CSS-Animationen sind ein perfektes Beispiel dafür! Ja, es hat lange gedauert, bis die Leute sich für die Verwendung von Semantik im Web begeistern ließen, aber dabei haben wir die Möglichkeit nicht-semantischer Elemente fast vollständig verängstigt.
Dies ist eine entscheidende Unterscheidung, die ich auf meinem Blog hervorgehoben habe. Wir können die Idee des nicht-semantischen Markups nicht über Bord werfen; Webseiten haben Bedeutung, aber es gibt auch ästhetische Überlegungen.
Einige schöne Prosa dort ;)
Nur eine Anmerkung zu einem Tippfehler „keygrame“ statt keyframe oberhalb des Keyframe-CSS-Code-Snippets.
Es sei denn, Sie wissen etwas, das wir über Keygrames nicht wissen? Sie klingen auf jeden Fall großartig.
Das Verstecken von Text, einschließlich `text-indent:-9999px`, schadet Ihrem Suchranking und Google kann Sie schließlich dafür bestrafen.
Google Webmaster Tools Hilfe – Versteckter Text und Links http://www.google.com/support/webmasters/bin/answer.py?answer=66353
Google I/O Session 2009, bei 0:35:46 http://www.youtube.com/watch_popup?v=-SLcruwnkLk&vq=medium#t=1851
Ich bin nicht ganz überzeugt, dass das, was Chris hier vorschlägt, sofort von Google als Spam eingestuft würde. Laut dem von Ihnen zitierten Google Webmaster-Link heißt es:
Fett hinzugefügt. In diesem Fall ist es nicht „täuschend“, die leeren Elemente semantischer zu gestalten, daher wird es nicht zwangsläufig bestraft.
Außerdem wurde dieses Problem des Versteckens von Text und wie Google es betrachtet im Zusammenhang mit Bildersetzungsverfahren behandelt. Zum Beispiel siehe diesen Artikel von David Shea, der Googles Sicht auf versteckten Text zusammenfasst:
Bildersetzung + Google
Obwohl Bildersetzungsverfahren heute nicht mehr so relevant sind, gilt das gleiche Prinzip. Shea kommt zu dem Schluss:
Wenn sich Googles Sichtweise seitdem geändert hat, würde ich gerne Beweise dafür sehen. Andernfalls glaube ich, dass die gleiche Regel hier gilt. Sie könnten also dieses Zitat ändern zu:
Aber auch hier gilt: Wenn es andere Beweise gibt, die darauf hindeuten, dass Chris' Technik Probleme verursachen würde, würde ich sie gerne sehen. Aber ich denke, solange die Absicht nicht böswillig oder spammy ist, ist es sicher, Text mit CSS zu verstecken.
Es ist lustig. Wir hypothesieren immer über Screenreader, wenn es eine Demo für JAWS auf deren Website gibt und Fang, das Firefox-Addon, das Webseiten in Text übersetzt. Als ich gerade über Screenreader las, klangen sie wirklich robotisch und angeblich sind die Benutzer es gewohnt, den Inhalt sehr schnell zu hören. Also bin ich mir nicht sicher, ob sie wirklich wollen, dass R2D2 Byron auf Meth rezitiert!
Ich denke, für diejenigen von uns, die ihre eigenen Unternehmen im Web betreiben, ist `text-indent:-9999px` etwas beängstigend.
Schadet es SEO?
Wird Google uns bestrafen?
Für die meisten Fälle bestraft Google die Verwendung von CSS zum Verstecken von Text, WENN der versteckte Text eine Liste von Schlüsselwörtern ist. Man kann jedoch nie sicher genug sein, wenn es um Google geht.
Ich hatte kürzlich eine Website, die von Platz 3 auf Platz 112 fiel und ein wesentlicher Einkommensstrom über Nacht versiegte. Wenn ich also zwischen Semantik und Geld wählen muss, wähle ich immer Geld.
@nick, @Binyamin… da Sie so ängstlich vor Googles (oft launischen) Systemen sind und tatsächlich gedacht haben, dass Bild-für-Text-Substitution eine akzeptierte Praxis war, die tatsächlich von Google unterstützt wurde, habe ich die von „Binyamin“ oben angebotenen Links verfolgt.
Ehrlich gesagt, ich sehe nichts in Googles Position, das auch nur andeutet, dass sie eine Website für die Verwendung von Bildersetzung bestrafen würden – ohne Links oder die Absicht, Schlüsselwörter für SEO-Zwecke zu verbergen. Tatsächlich das Gegenteil. Googles Formulierung scheint mir „Extrapunkte“ zur Verbesserung des Zugänglichkeitserlebnisses anzubieten.
Darüber hinaus sehe ich nirgends, dass Google Bestimmungen für die „Abwertung“ eines Rankings für die Verwendung von verstecktem Text trifft. Was sie androhen, ist die „Entfernung“ aus den Rankings! Von 3 auf 112 zu fallen, würde mich veranlassen zu überlegen, ob „jemand“ meinen Einkommensstrom entdeckt hat und nun alle ihm zur Verfügung stehenden Techniken nutzt, um ihn mir wegzunehmen. Dort würde ich nach Antworten suchen, anstatt es allein Googles Bildersetzungsrichtlinien zuzuschreiben. (Natürlich bedeutet das immer noch nicht, dass Googles Algorithmus, der zerkleinerte, hirntote Blog-Inhalte 12 Ergebnisreihen über vollständige autoritative Inhaltsseiten stellt, keinen Mist baut!)
Ich sehe, dass Google eine „Entkräftung“ anbietet, wenn Sie wirklich der Meinung sind, dass Ihre Website ausschließlich wegen Bildersetzung zu Unrecht angegriffen wurde: Reichen Sie Ihre Website zur erneuten Prüfung ein.
Ich wollte nur meine Unterstützung für den Punkt „Moment mal, du schicker Designer-Junge“ ausdrücken, obwohl ich selbst kein Screenreader-Benutzer bin. Es scheint ein guter Test dafür zu sein, ob alternative Inhalte benötigt werden, um festzustellen, ob die Animation versucht, Informationen zu vermitteln oder ob sie nur als Dekoration dient.
Zum Beispiel:
– Animation eines Balkendiagramms oder Liniendiagramms zur Veranschaulichung von Datenänderungen über die Zeit: Ja für alternative Textinhalte.
– Animation eines Vogels, der einfach so über den Bildschirm fliegt, weil man es kann: Nein für alternative Textinhalte.
Als sehender Benutzer verstehe ich den Wunsch, die Stimmung eines Designs zu vermitteln. Aber ich glaube nicht, dass irgendjemand dies derzeit mit nicht animierten Designelementen tut, und alle Empfehlungen, die ich gehört habe, sagen, dass man es nicht tun soll. Wenn Sie ein statisches Bild eines Vogels haben, der über den Bildschirm fliegt, sollte der Alt-Text nicht lauten: „Ein Bild eines Vogels, der über den Himmel fliegt.“ Der Alt-Text sollte eine leere Zeichenkette sein: „“.
Hier ist, was dies (oder irgendetwas anderes) schlecht für die Zugänglichkeit macht:
text-indent: -9999px;
Boom! Genau da verunstalten Sie das Erlebnis für teilweise sehende Benutzer, die auch einen Screenreader verwenden.
DK
Ich liebe das Redesign. Tolle Arbeit, Jungs!
Die Idee, semantisch zu sein, bedeutet nicht, Inhalt bereitzustellen. Semantisch bedeutet technisch und wörtlich „Betonung“, da es vom griechischen Wort „sēmantikos“ kommt, was „bedeutungsvoll“ bedeutet. Wenn wir also ein Header-Tag für den Header unserer Website verwenden, hat das nichts mit der Bedeutung des Wortes „Header“ zu tun. Vielmehr betonen wir, dass dies der Header unserer Website ist.
Ich denke, ein besserer Name für das, was Sie hier in diesem Artikel beschrieben haben, Chris, wäre „zugängliche Animation“ anstelle von „semantischer Animation“. Bei Ihrer Animation betonen Sie nichts, indem Sie leere Divs mit Inhalt füllen. Sie stellen nur etwas für sehbehinderte Menschen bereit.
Das ist alles Theorie. Es ist wie ARIA-Kompatibilität.
Wo sind die Tools, um eine Webseite mit verschiedenen Behinderungen wirklich zu testen? Ich bin sicher, dass das Surfen auf einer Website nur mit Audio oder Braille besseres Feedback geben würde. So wie wir Websites von IEx testen, wäre es schön, diese Dinge in unserer Toolbox zu haben.
Wenn der Inhalt bedeutsam ist, sollte er nicht in einem leeren Div stehen, sondern in einem img-Tag mit einem Alt-Attribut. Die img-Tags sagen „Hey, das ist eine Illustration, die für meinen Inhalt sinnvoll ist“.
Wenn der Inhalt bedeutungslos ist (und daher in einem leeren Div stehen kann), dann sollte er nicht für Screenreader bereitgestellt werden.
Bei Semantik geht es um Bedeutung, nicht darum, jedes Detail einer Seite zu verkleiden.
Weniger ist mehr ;)
Nach meinem Dafürhalten sind CSS-Animationen der Elefant im Raum.
Animation bedeutet für mich nicht Präsentation, und ich glaube ziemlich sicher, dass CSS-Animationen eine Modeerscheinung sind. Genau wie jedes einzelne animierte GIF, das vor nicht allzu langer Zeit das Web verschmutzte.
Es ist auch nicht realistisch. Nach Ihren Maßstäben sollten Sie abwechselnd jedes einzelne Ereignis und jede einzelne Auswirkung auf der Seite beschreiben (Hover, Fokus, Farbwechsel usw.), nicht nur CSS-„Spezialeffekte“. Und das könnte sehr schnell unübersichtlich werden.
Ich kann mir nur vorstellen, wie nervig das mit der Zeit wird und wie absolut nutzlos es ist. Jedenfalls, nach dem, was ich bisher erlebt habe (HI), ist das die Idee: Weniger ist mehr.
Ich würde nicht sagen, dass CSS3-Animationen eine Modeerscheinung sind. Es gibt viele gängige JS/Flash-Animationen, die jetzt durch CSS3-Animationen ersetzt werden können. CSS3-Animationen bieten auch eine bessere Leistung als JS/Flash-Animationen auf älteren Computern und mobilen Browsern.
Ich denke, CSS3-Animationen werden zum Standard für einfache Animationen.
Die Art und Weise, wie ich einige neue CSS-Implementierungen, wie zum Beispiel Animationen, verstehe, ist, dass sie Mittel zur Aufmerksamkeitsgewinnung sind.
Ich spreche nicht unbedingt von der Aufmerksamkeit des Benutzers. Es ist die Aufmerksamkeit des Entwicklers, um die sich konkurrierende Spezifikationen und konkurrierende Browserhersteller bemühen.
Und ich sage das, weil Spezifikationsersteller einfach nur glänzende Dinge an Hersteller und Entwickler werfen wollen, um mehr Aufmerksamkeit zu bekommen.
Weil Browserhersteller diese Spezifikationen aufgreifen und die *korrekte* Implementierung einiger grundlegender und wichtiger CSS-Elemente zugunsten der neuesten CSS-Modeerscheinungen aufgegeben haben, um nicht gegenüber dem Benutzer an Boden zu verlieren (oder sogar zu gewinnen).
Ich hätte gerne eine solide CSS-Basis, die ordnungsgemäß implementiert ist. Ich möchte mein Layout genießen können, mich nicht darum kümmern. Ich möchte Vertrauen in die Verwendung relativer Dimensionen haben.
Und ein paar andere, die in einem UA oder einem anderen behoben werden müssen, weil keiner perfekt ist.
Nach diesen Korrekturen sind CSS-Animationen als *Experimente* akzeptabel. Aber nicht vorher. Und ich werde weiterhin glauben, dass CSS-Animationen nicht wirklich Präsentation sind.
CSS-Animationen sind neben einigen Feinschliffen (Schieben, Rollover, Parallax) im Moment etwas unhandlich. Es gibt keine fortgeschrittenen IDE-Tools wie Flash, um sie reibungslos zu erstellen. Und die Animation ist in verschiedenen Browsern oft ruckelig und unvorhersehbar. Ich meine Animationen, die über die Komplexität einer geraden Bewegung von Punkt A nach Punkt B hinausgehen.
Ich möchte nur darauf hinweisen, wie glücklich ich über diesen Artikel und besonders die Kommentare hier bin. Das ist es, was die Web-Community ausmacht: Zusammenkommen und die beste Vorgehensweise diskutieren oder debattieren sowie Ressourcen und Tipps austauschen. Ich glaube, ich habe viel gelernt, großartige Arbeit!