【问题标题】:CSS3 Animate It changes position and width properties for some elements on mobile devicesCSS3 Animate It 更改移动设备上某些元素的位置和宽度属性
【发布时间】:2016-03-17 08:56:07
【问题描述】:

我的一些博客文章页面有这个奇怪的问题,例如。 http://www.stgobsas.dk/blog/buenosaires/index.html

问题似乎出在我的 CSS3 Animate It 插件上。在任何宽度的桌面浏览器中查看时,它似乎工作得很好(我已经测试到 400 像素)。但是当我在移动设备上查看它时(以及使用设备模式通过 Chrome 的开发人员工具),它会将我的 <header> 和 .header-image 的位置属性从固定更改为“不固定”,它使我的标题/菜单栏占用更多的水平空间,例如。 760 像素,其中 .main-wrapper 占用了 375 像素(这适用于 iPhone 6)。我真的不明白为什么这个问题只出现在移动浏览器上,而不是在桌面浏览器上,即使窗口宽度相同。

看看我的 script.js 文件的底部。倒数第二个代码块用于我的博客页面,它会导致问题。最后一个代码块用于我的首页,它会导致类似的问题,但是标题/菜单栏的宽度会在动画继续时缩小,然后再次正常。

更新:如果您通过 iPad 大小(或任何大于 700 像素)的 Chrome 中的设备模式查看它,您会看到同样的问题,但是当您一直向下滚动到底部时,其中最后一个动画正在等待用户滚动到视图中,然后这些动画结束后问题就消失了。然后一切又好了。所以肯定是CSS3 Animate It插件的问题。但是为什么会这样呢?

我希望有人能找出问题所在!

【问题讨论】:

  • 在 jsfiddle 上分享你的代码
  • 嗨,马丹。我可以这样做,但我需要相当长的时间来重新构建示例。您无法通过首选浏览器中的开发人员工具检查我的代码吗?

标签: jquery css mobile responsive-design


【解决方案1】:

经过初步分析,似乎是由以下原因引起的:

<img src="buenosairescover.jpg" class="fullsize" height="1200" witdh="1600">

删除width="1600"height="1200"

以及带有“details-container”类的 div 的内容。

如果您删除该 div 和图像的宽度,问题就会消失。 这是第一个有趣的曲目!

【讨论】:

  • 从小图详细发现是.bounceInRight类的原因。如果您删除属性:transform: translateX(400px)-webkit-transform: translateX(400px),它会消除问题
  • 我尝试了您的第一个答案,但这并没有改变我的任何事情。你的第二个答案听起来更好,但如果我删除那些我不能再使用动画。也许我只需要选择另一种动画。但是你能解释一下为什么移动浏览器和笔记本电脑/台式机浏览器会有这种差异吗?
  • 我实际上不知道为什么在移动浏览器上会有不同的行为,因为我从未使用过 animate.css。但是,您可以通过在图像的容器中添加overflow:hidden; 来解决问题,因此它不会扩展它。这里的容器是类 details 的 div
  • 好的。但是非常感谢!这让我很开心!我应该昨天问而不是浪费宝贵的时间:-)
  • 没问题!不要忘记打勾,这样人们就会知道您的问题已经解决了!
猜你喜欢
  • 1970-01-01
  • 2021-11-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-07
相关资源
最近更新 更多