iOS Probleme mit transition

Datum: 28. September 2016
Autor*in: Florian Müller


Heute ist mir bei einem Projekt ein Problem mit iOS begegnet. Es gibt eine Galerie, bei welcher die Elemente von oben „hereinfliegen“. Auf dem iPad und dem iPhone war dieser Effekt kaum beziehungsweise gar nicht vorhanden, sondern das Bild war einfach *plopp* da. Problem hierbei ist, dass transitions bei iOS ohne Hardware Beschleunigung gerendert werden. Um diese jedoch nutzen zu können, muss man dem Gerät vorspielen, dass hier 3D Inhalte vorkommen. Dadurch aktiviert sich die Hardware Beschleunigung zum Rendern der Animation.

Die CSS Regel, welche bei bei dem Projekt zum Einsatz, sieht wie folgt aus.

  .heroImage > figure{
    display: table; width: 100%;
    margin: 0px; padding: 0px;
    transition: transform 0.25s ease, 
          opacity 0.25s ease, top 0.5s ease;
  }

Fügt man nun noch ein transform: translate3d(0,0,0); hinzu, wird die transition auch auf iOS korrekt ausgeführt. Insgesamt lief die Galerie dadurch flüssiger. Für die Browser-Kompatibilität sollen natürlich die Vendor Prefixes nicht vergessen werden.

In wie fern sich dies auf Android oder am PC auswirkt, kann ich nicht mit Bestimmtheit sagen. Gefühlt ist es auch bei Android flüssiger geworden, dies kann jedoch auch nur der Placeboeffekt gewesen sein.


Kommentare

Selber kommentieren:






Weitere Beiträge zum Thema Technologie


PHP-Funktionen in PHPUnit testen

Autor*in: Benjamin Hofmann


Technologie


Gestern bin ich auf eine interessante Erweiterung für PHPUnit gestoßen, die es erlaubt auch reine Funktionen als Mock-Objekte anzulegen und deren Verhalten damit zu testen: PHP-Mock bzw. dessen Erweiterung für die Nutzung in PHPUnit. Damit kann man dann sehr bequem auch interne Funktionen testen, z.B. file_get_contents() oder auch ein mail(). Ein so gearteter Test könnte …


Beitrag lesen
13
JAN
17

Von Zend_Date und den ersten Tagen im Jahr

Autor*in: Benjamin Hofmann


Technologie


Ebene bin ich auf eine interessante Sache bei der Verwendung von Zend_Date und dessen Datumskonstanten (Link) gestoßen. Verwendet man die Konstante Zend_Date::YEAR_8601, die sich nach ISO 8601 richtet, wird das Jahr nicht nach der Woche berechnet, in der sich der gegebene Tag befindet. Nun ist es ja bekanntermaßen so, dass sich die letzte Woche eines …


Beitrag lesen
19
DEZ
11

Follow-up zu Vortrag beim imx.Camp – „Technologie-Umstellung bei Twitter“

Autor*in:


Technologie


Wie mir gerade bewusst wird, muss ich eine Aussage aus meinem Vortrag beim imx.Camp korrigieren: Twitter ist nicht bei der US-Präsidentschaftswahl im Jahre 2008 in weiten Teilen von Ruby auf Scala (Java Virtual Machine) umgestiegen, sondern erst während der US-Wahlen im Jahre 2012. Wen’s interessiert, der kann die Hintergründe hier nachlesen: Twitter’s Shift from Ruby …


Beitrag lesen
22
OKT
15

OOP 2015 – Tag 3

Autor*in: Marc Kurzmann


Technologie // Über den Tellerrand


Heute ging’s gleich technisch los mit dem ersten Vortrag über Möglichkeiten zur Vereinfachung von Deployments und Abhängigkeiten zur Laufzeitumgebung. Goßes Problem stellt hier zum Einen die oftmals mühsame Bereitstellung der Laufzeitumgebung dar (insbes. Appserver, wie Tomcat etc.), zum Anderen bringt das eine große Abhängigkeit in den zu verwendenden Bibliotheken mit sich (Servlet-API). Einen interessanten Ansatz …


Beitrag lesen
30
JAN
15