【问题标题】:Why do my image rollovers not work on ipads and iphones?为什么我的图像翻转在 ipad 和 iphone 上不起作用?
【发布时间】:2015-01-05 13:43:57
【问题描述】:

我发现我的图像翻转不适用于 ipad 或 iphone。有谁知道这些设备的解决方法? 翻转在此页面上: http://www.newsite0914.i4dsign.co.uk/portfolio.html

这是 CSS:

div.rollover div.mask {
   background-color: rgba(218, 220, 220);/* The Fallback */
   background-color: rgba(218,220,220, 0.8);
   width: 419px;
   height: 322px;
   padding:130px;
   margin:26px 28px 26px 28px;
   -ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=0)";
   filter: alpha(opacity=0);
   opacity: 0;
   -webkit-transform: translate(265px, 145px) rotate(45deg);
   -moz-transform: translate(265px, 145px) rotate(45deg);
   -o-transform: translate(265px, 145px) rotate(45deg);
   -ms-transform: translate(265px, 145px) rotate(45deg);
   transform: translate(265px, 145px) rotate(45deg);
   -webkit-transition: all 0.35s ease-in-out;
   -moz-transition: all 0.35s ease-in-out;
   -o-transition: all 0.35s ease-in-out;
   -ms-transition: all 0.35s ease-in-out;
   transition: all 0.35s ease-in-out;
}

div.rollover:hover div.mask {
   -ms-filter: "progid: DXImageTransform.Microsoft.Alpha(Opacity=100)";
   filter: alpha(opacity=100);
   opacity: 1;
   -webkit-transform: translate(-80px, -125px);
   -moz-transform: translate(-80px, -125px) ;
   -o-transform: translate(-80px, -125px);
   -ms-transform: translate(-80px, -125px) ;
   transform: translate(-80px, -125px) ;
}

我还将溢出:隐藏应用于每个具有图像背景的图像 div: 例如。

div#hi_hats
{
    background-image: url("images/website_hiHats.jpg");
    overflow: hidden;
}

这是图像翻转的 HTML:

<div class="website_bck left" id="hi_hats">
                        <div class="rollover"> 

                            <div class="mask">
                                <h2>The Hi-Hats</h2>
                                <h3>Wedding & Function Band</h3>
                                <a href="portfolio_hi_hats.html">More Information</a>
                            </div>

                        </div>      
                    </div>

【问题讨论】:

  • 因为您无法将鼠标悬停在 ipad 上?

标签: html css iphone ipad


【解决方案1】:

当您点击一个元素时,大多数基于触摸的设备的浏览器都会触发 :hover 规则。假设您知道这一点并且您认为这是想要的行为,这就是您的问题:

@media only screen and (-webkit-min-device-pixel-ratio: 1) 
and (max-device-width: 1024px) and (min-device-width: 320px) 
div.rollover div.mask {
   padding: 5%!important;
}

(main.css:2884)

您在原始规则中指定的填充 (padding:130px;) 在智能手机和平板电脑等设备上将替换为上述填充。如果您删除此规则,则翻转效果就像在桌面上一样,但通过点击。

它可以在 5% 的边距下工作,但蒙版的放置方式使得大部分蒙版在移动设备上被剪裁。

我使用 Chrome 的检查器及其“设备模式”调试了这个问题。

【讨论】:

  • 非常感谢您解决这个问题。具有讽刺意味的是,我专门为智能手机和平板电脑添加了 5% 的填充,因为我希望这可能有助于阻止文本在较小的设备上消失。
猜你喜欢
  • 2021-07-19
  • 1970-01-01
  • 2019-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-09-28
  • 2018-09-05
相关资源
最近更新 更多