css - 按钮宽度CSS过渡不起作用

标签 css button css-transitions

我在按钮标记中的过渡 css 属性方面遇到问题。

当我悬停按钮时,我以为它会平滑地转到 width:auto,但它直接跳转。

这是代码,我错过了什么?

<button>Hello</button>

button {
   padding: 10px;
   width: 30px;
   overflow:hidden;
   transition: width 400ms ease-in-out;
   -webkit-transition: width 400ms ease-in-out;
   -moz-transition: width 400ms ease-in-out;
}

button:hover {
   width: auto;
}

最佳答案

最大宽度是你的 friend

Demo

button {
   padding: 10px;
   width: auto;
   max-width: 30px;
   overflow:hidden;
   transition: max-width 400ms ease-in-out;
   -webkit-transition: max-width 400ms ease-in-out;
   -moz-transition: max-width 400ms ease-in-out;
}

button:hover {
   max-width: 100%;
}

关于css - 按钮宽度CSS过渡不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32213845/

相关文章:

javascript - 如何将元素拆分为两个可连续的部分并在它们之间添加另一个元素

jquery - 基于 css 属性的选择器

css - 我怎样才能添加两个过渡变换,但一个接一个?

button - 在 PyGame 中创建按钮

CSS transition rotate() 而不是 translate()

使用双嵌套类选择的 CSS 未选择正确的元素

swift - 在 Swift 中创建一个转到另一个类的按钮

ios - 如何在 UIAlertView 的按钮中执行操作?

html - CSS Transition 边框立即恢复

performance - CSS3 转换会减慢网站速度吗?