如何在触摸屏上处理悬停动画:点击手机与悬停在PC上

时间:2017-06-23 18:58:11

标签: html css mobile hover touch

我有以下html和CSS,有一个图片框,其中标题居中。当悬停时,标题会动画并淡出,同时文本会淡入并从底部到中心进行动画处理。

这在PC上运行良好,但在触摸设备上,我遇到的问题是用户在滚动查看文本时必须触摸图像。触摸图像一次将立即打开链接。

有没有办法可以让它在移动设备上,当用户第一次触摸图像并且第二次触摸时打开链接时执行动画?触摸图像外部应该还原动画。

我希望你能解释我如何实现这一目标(如果可能的话)。或者是否有另一种普遍接受的方式来处理在移动设备上悬停?



.content {
  position: relative;
  overflow: hidden;
  display: flex;
  display: -webkit-flex;
  -webkit-align-items: center;
  align-items: center;
  justify-content: center;
}

.text_container {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.text_container div {
  top: 50%;
  transform: translateY(-50%);
}

.image_container {
  width: 100%;
  height: 100%;
}

.image {
  object-fit: cover;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

.content:hover .image {
 transform: scale(1.1);
}

.text_container {
  position: absolute;
  display: flex;
  display: -webkit-flex;
  -webkit-align-items: center;
  align-items: center;
  width: 100%;
  height: 100%;
}

.text_container>div {
  position: absolute;
  text-align: center;
  width: 100%;
}

.text_container .title h2 {
  opacity: 1;
  margin: 0px;
  padding: 0px;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}

.content:hover .text_container .title h2 {
  opacity: 0;
  -webkit-transform: translate3d(0,-20px,0);
  transform: translate3d(0,-20px,0);
}

.text_container .content div {
  margin: 0px;
  padding: 0px;
  opacity: 0;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  -webkit-transform: translate3d(0,20px,0);
  transform: translate3d(0,20px,0);
}

.content:hover .text_container .content div {
  opacity: 1;
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}

<div class="content">
      <a href="www.google.com">
        <div class="container">
          <div class="image_container">
            <img src="https://www.google.com/logos/2017/fischinger/bg_cta.jpg" />
          </div>
          <div class="text_container">
            <div class="title">
              <h2>My Title</h2>
            </div>
            <div class="content">
              <div>
                Some text.
              </div>
            </div>
          </div>
        </div>
      </a>
    </div>
&#13;
&#13;
&#13;

0 个答案:

没有答案