【问题标题】:Font rendering issue on hover/click/jquery events悬停/单击/jquery 事件上的字体呈现问题
【发布时间】:2014-04-23 22:29:26
【问题描述】:

使用 bootstrap 3 构建一个移动站点,它使用了 collapse js 插件。

我的问题是,当您将鼠标悬停在折叠中的字体上时(值得注意的是,系统字体会发生这种情况,而不仅仅是网络字体问题,使用网络字体更容易显示)或单击字体外观的变化。部分字体被删除或大小发生变化。我不确定为什么会这样,我尝试了以下方法:

  • -webkit-font-smoothing
  • 文本渲染
  • 添加固定的行高
  • 背面可见度

但是,这些都不起作用。我的想法已经用完了,虽然很难在屏幕截图中显示,但在与网站交互时,它是 100% 的一个大而明显的问题。

我假设这与崩溃 jquery 有关,但我无法在 bootstrap repo、here 或一般的谷歌搜索中找到任何东西(很难搜索哈哈),所以任何帮助将不胜感激。我没有太多与字体相关的代码,但是:

  .panel-tap {
    position: relative;
    display: block;
    width: 100%;
    line-height: 1;
    font-size: 16px;
  }

面板有一些填充,但在动画过程中不会改变,也没有在动画过程中添加任何样式(仅添加类名来显示/隐藏下面的内容。

我无法发布该网站的链接,但希望这是足够的信息。 谢谢

编辑:值得注意的是,我已尝试删除与其关联的所有样式(即位置)并尝试添加特定样式以确保它不会在整个站点中被覆盖(即添加字体-权重、行高、边框等)

edit2:这不会一直发生,它会在几秒钟或几下点击后停止,完全不一致

edit3:禁用了折叠的动画/jquery 端,它仍然会这样做

【问题讨论】:

  • 我们能看到一个 JSFiddle 吗?
  • @risk 这个问题没有出现在小提琴上(虽然我已经在外部样式表中附加了所有样式)所以它必须与我页面上的 js 有关,但仍然可以检查代码寻找任何潜在的错误jsfiddle.net/8pdM7
  • 我将 bootstrap.js 添加到您的小提琴中,这似乎运行良好:jsfiddle.net/9enx7 所以问题必须是由于一些外部 js(或 css)代码。如果@discoliam 的回答没有奏效,如果没有重现错误的小提琴,或者至少没有任何可能导致错误的代码,我将无法为您提供更多帮助。

标签: javascript jquery css twitter-bootstrap fonts


【解决方案1】:

一些想法:

  • 您是否尝试将所有 CSS 动画属性设置为 0/none。它可能会从其他地方的父/坏选择器中获取一些东西。

  • 仔细检查 :active:focus 没有 CSS。或者可能是文本周围具有相对 font-sizeem% 等)的跨度

  • 我记得遇到过类似问题,position:relative;。你能在文本周围加上span 并给它position:static;

  • 是否有活动的类或可能导致问题的东西?

这就是我能想到的。但可能会有所帮助。

【讨论】:

  • 谢谢,目前还没有真正在折叠时使用任何 css 动画,它只是显示和隐藏,没有过渡/动画 - 它也发生在动画触发之前。我会看一下 :Active 和 :focus 虽然我在浏览器中看不到任何内容 - 我尝试删除 relative 并且它给了我相同的结果,但我现在将尝试跨度。再次没有活动类,它发生在所有人身上并且发生在动画被触发之前
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-12
  • 2015-03-23
  • 1970-01-01
  • 2014-01-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多