title: CSS Animation on iOS devices
body: <p>I am using a CSS flip animation to show content on one side and text on the other. The animation works using a hover selector on desktop browsers. On mobile devices it should use a touch event to carry out the flip.</p>
  
  <p>It works on edge, chrome and firefox and I have added additional CSS to handle older versions of IE.</p>
  
  <p>However when I run it up on my iPhone I cannot get the the flip animation to work as expected.</p>
  
  <p>I have attached a fiddle to show the issue I am having.</p>
  
  <p><a href="https://jsfiddle.net/rsmith93/oehqd5j6/" rel="nofollow noreferrer">https://jsfiddle.net/rsmith93/oehqd5j6/</a></p>
  
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-js lang-js prettyprint-override"><code>$(".flip-container").hover(function() {
    $(this).toggleClass('hover');
  });</code></pre>
  <pre class="snippet-code-css lang-css prettyprint-override"><code>.flip-container {
    perspective: 1000px;
  }
  
  .flip-container.hover .flipper {
    transform: rotateY(180deg);
  }
  
  .flip-container,
  .front,
  .back {
    width: 360px;
    height: 270px;
  }
  
  .flipper {
    transition: 0.6s;
    transform-style: preserve-3d;
    position: relative;
  }
  
  .front,
  .back {
    backface-visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    border: 1px solid black;
  }
  
  .front {
    z-index: 2;
    transform: rotateY(0deg);
  }
  
  .back {
    transform: rotateY(180deg);
    background: rgba(33, 33, 33, 1);
    color: white;
  }
  
  .name1 {
    font-size: 1.5em;
    display: inline-block;
    background: rgba(33, 33, 33, 0.9);
    color: #f8f8f8;
    font-family: Courier;
    padding: 5px 10px;
    border-radius: 5px;
    bottom: 40px;
    left: 4px;
    position: absolute;
    text-shadow: 0.1em 0.1em 0.05em #333;
  }</code></pre>
  <pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"&gt;&lt;/script&gt;
  HTML:
  
  &lt;div class="row"&gt;
    &lt;div class="col-sm-4"&gt;
      &lt;div class="flip-container" onclick="this.classList.toggle('hover');"&gt;
        &lt;div class="flipper"&gt;
          &lt;div class="front"&gt;
            &lt;!-- front content --&gt;
            &lt;span class="name1"&gt;panel 1&lt;/span&gt;
          &lt;/div&gt;
          &lt;div class="back"&gt;
            &lt;!-- back content --&gt;
            back panel
          &lt;/div&gt;
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="col-sm-4"&gt;
      &lt;div class="flip-container" onclick="this.classList.toggle('hover');"&gt;
        &lt;div class="flipper"&gt;
          &lt;div class="front"&gt;
            &lt;!-- front content --&gt;
            &lt;span class="name1"&gt;panel 2&lt;/span&gt;
          &lt;/div&gt;
          &lt;div class="back"&gt;
            &lt;!-- back content --&gt;
            back 2
          &lt;/div&gt;
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
    &lt;div class="col-sm-4"&gt;
      &lt;div class="flip-container"&gt;
        &lt;div class="flipper"&gt;
          &lt;div class="front"&gt;
            &lt;!-- front content --&gt;
            &lt;span class="name1"&gt;panel 3&lt;/span&gt;
          &lt;/div&gt;
          &lt;div class="back"&gt;
            &lt;!-- back content --&gt;
            back 3
          &lt;/div&gt;
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;</code></pre>
  </div>
  </div>
  </p>
  
  <p>Any help here is appreciated.</p>