【问题标题】:Element twitches in Chrome - CSS width transitionChrome 中的元素抽动 - CSS 宽度过渡
【发布时间】:2014-06-06 16:01:48
【问题描述】:

当我在 Chrome 中使用宽度过渡时,我的元素会抽搐。我该如何解决这个问题?

.search-group input {
   width: 85px;
   -webkit-transition: all ease-in-out .15s;
   transition: all ease-in-out .15s;
}
.search-group input:focus {
   width: 150px;
   outline: none;
}

JSFIDDLE

VIDEO(质量问题见谅)

【问题讨论】:

  • 你用什么浏览器?在 Firefox 中看起来不错。
  • @HristoValkanov,铬 35.0.1916.114 m
  • @totoro2,嗯,奇怪...
  • @totoro2, tinypic.com/player.php?v=4jop3s%3E&s=8#.U5HosfmwI3g - 看右边部分(抱歉质量问题)。
  • 我以前遇到过这种问题,但有不透明度过渡。我想我设法通过包含 -moz--ms-o- 来解决它,这对我来说毫无意义

标签: css google-chrome transition


【解决方案1】:

好吧,我想我修好了。我补充说:

.window_label{
    -webkit-backface-visibility: hidden;
}

jsfiddle

至少在我的机器上它修复了 Chrome 的抽搐。我发现这是一个官方错误,如herehere 和互联网上的许多其他地方所述。

如 cmets 中所述,此错误会影响不透明度改变的元素。

编辑:试试这个jsfiddle。我想我修好了。我将离开上述决议,因为它可以为某人服务。无论如何,问题出在

显示:表格

它被窃听了,当额外的“}”出现时,它使“.search-group”字段 css 无效。

我将那里的显示选项表单移至“.header-search”,这是最终结果:

.header-search {
    position: absolute;
    top: 6px;
    right: 10px;
    display: table;
}
.search-group {
    position: relative;
    border-collapse: separate;
    display: table-row;
    float: right;
}

对我来说,它解决了问题。试试看,告诉我它是否也为你解决了问题。

【讨论】:

  • 但在我的现场项目中,我无法理解哪些元素应该具有这个 CSS 属性。
  • 如果您提供的是最后的正方形,即显示“结果”的正方形。如果这没有帮助,请考虑以下事项: 该错误发生在不透明度改变的元素上。你应该首先定位他们。
  • 看,你的 Jsfiddle 有两个 } - .window_label{ -webkit-backface-visibility: hidden;} }。如果我删除一个问题会再次出现。奇怪。
  • 很遗憾,我不应该接受您的回答,因为它不起作用。 CodePen 中的示例 - codepen.io/anon/pen/pByCv
  • 谢谢。我刚刚删除了display:table。一切都很好。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-27
  • 2014-06-11
  • 2017-08-03
  • 1970-01-01
  • 2013-11-07
相关资源
最近更新 更多