【发布时间】:2017-03-03 09:10:54
【问题描述】:
that.iconDisplayPercent = that.scrollPosition / that.headerHeight
$('#icon').css({'opacity':that.iconDisplayPercent})
that.iconRotatePercent = Math.min(1,that.scrollPosition/that.headerHeight)
$('#icon').css({'transform':'rotate('+that.iconRotatePercent*180+'deg)'})
原始 CSS 类:
.icon{
position: fixed;
right: 25px;
color: white;
top:20px;
visibility: visible;
opacity: 0;
font-size: x-large;
}
以上代码(仅部分)无法在Safari上运行,但在Chrome上完美运行,有人知道这里发生了什么吗?
这是我们网站的一个功能,图标会随着屏幕滚动而旋转,所以我计算了一个百分比来传递不透明度和旋转度数,但是Safari似乎无法添加这个内联CSS动态,但Chrome可以.大声笑,完全糊涂了。
注意: 我这样定义这个元素: i#icon.fa.fa-chevron-circle-up(class='icon') 所以“图标”既是 id 也是类名,在初始状态下,它遵循 .icon{} 类,但我得到 #icon 以添加内联 css 以覆盖原始 css。
【问题讨论】:
-
在 jquery 中你使用
#而在 css 中你定义它就像 class.icon.. 请在 css 中更改#icon -
看看这个重复的问题:jquery-style-not-being-applied-in-safari
-
@MukeshRam 注意:我这样定义这个元素:i#icon.fa.fa-chevron-circle-up(class='icon') 所以'icon'既是id又是类名,在初始状态下,它遵循 .icon{} 类,但我得到 #icon 添加内联 css 以覆盖原始 css。
标签: javascript jquery html css safari