【发布时间】:2018-12-01 05:33:26
【问题描述】:
我有这个网站https://www.scit.com.br/
这在除 safari 之外的所有浏览器中都能正常工作,在中小屏幕上。问题是页面开始像放大和缩小一样闪烁。检查显示重复的 :before 和 :after 添加到标签中。这是由 style.css 文件引起的。 我尝试删除所有 js 文件,所以 JS 不是罪魁祸首。
稍后通过跟踪和错误删除代码。我发现下面的css导致了这个问题
style.css 行:2080、2118、2156、2203
@media (min-width: 36rem) and (max-width: 47.9375rem) {
html {
font-size: 85%;
}
}
@media (min-width: 48rem) and (max-width: 61.9375rem) {
html {
font-size: 90%;
}
}
@media (min-width: 62rem) and (max-width: 74.9375rem) {
html {
font-size: 95%;
}
}
@media (min-width: 75rem) {
html {
font-size: 100%;
}
}
如果我删除这些样式,它会起作用。
我的问题是
为什么会这样?
此问题的根本原因是什么以及如何解决?
【问题讨论】:
-
你在使用媒体查询吗?如果它在闪烁,我的第一个猜测是字体大小的变化将某些东西推到媒体查询的边界之外,这正在将字体大小调整回另一个媒体查询边界,因此它会反弹样式更改。
-
@Taplar 您的意见在某一方面可能是正确的。请注意,这只发生在不同媒体查询的转换中。唯一的可能是 safari 试图使下面的媒体查询以某种奇怪的方式工作。比如近似值或遗漏一些中间值之类的。我无法准确判断(最大宽度:74.9375rem)(最小宽度:75rem)
标签: jquery html css macos safari