0

我正在使用 Safari / iOS 5.1 在 Web 应用程序中测试自定义图标字体。图标显示在页面加载时的视口中,但是当我向下滚动到视口时它们丢失了。如果我检查一个元素并进行任何微小的更改,则会出现丢失的字体,但同样,只有当前视口中的那些字体。

下面是一个 CSS 示例:

.icon-test:before { content: "\e025"; }

在 Safari 6.1 中一切正常,该问题仅在 iOS 5.1 中出现。有没有人遇到过这个问题?

编辑:当我调试时,我在代码检查器中禁用了 position:relative 并且图标开始正确显示。

这是测试CSS:

@font-face {
font-family: 'custom';
src: url('fonts/custom.woff') format('woff'),
url('fonts/custom.ttf') format('truetype');
}

.icon-test-1, .icon-test-2 {
font-family: 'custom';
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
-webkit-font-smoothing: antialiased;
/*font-size: 28px;*/
color: #666666;
}


.icon-test-1:before {content: "\e000";}

.icon-test-2:before {content: "\e00e";}

.btn    {
position: relative;
top:4px;
float:right;
clear: both;
display: block;
height: 50px;
}

这是测试 HTML:

<div style="height:200px;width:500px;overflow: auto;">
 <a class="btn" href="#"><i class="icon-test-1"></i></a>
 <a class="btn" href="#"><i class="icon-test-2"></i></a>
 <a class="btn" href="#"><i class="icon-test-1"></i></a>
 <a class="btn" href="#"><i class="icon-test-2"></i></a>
 <a class="btn" href="#"><i class="icon-test-1"></i></a>
 <a class="btn" href="#"><i class="icon-test-2"></i></a>
 <a class="btn" href="#"><i class="icon-test-1"></i></a>
 <a class="btn" href="#"><i class="icon-test-2"></i></a>
 <a class="btn" href="#"><i class="icon-test-1"></i></a>
 <a class="btn" href="#"><i class="icon-test-2"></i></a>
 <a class="btn" href="#"><i class="icon-test-1"></i></a>
 <a class="btn" href="#"><i class="icon-test-2"></i></a>
 <a class="btn" href="#"><i class="icon-test-1"></i></a>
 <a class="btn" href="#"><i class="icon-test-2"></i></a>
 <a class="btn" href="#"><i class="icon-test-1"></i></a>
 <a class="btn" href="#"><i class="icon-test-2"></i></a>
</div>  
4

1 回答 1

0

添加...

-webkit-transform: translateZ(0); 

...到父元素修复了在 iOS 5 中向下滚动时字体图标不显示在视口之外的问题。

正在删除...

position:relative;

...也消除了不良行为,但我无法完全接受,因为我需要定位一些字体图标。

在此处此处阅读更多信息。

于 2013-06-27T18:23:52.440 回答