【发布时间】:2022-09-27 19:23:01
【问题描述】:
我创建了 3 个按钮,当您将鼠标悬停在它们上方时,它们会稍微伸展。我愿意不是希望他们移动他们的位置,而他们旁边的其他按钮之一正在伸展。
此处的代码有效:
.stretch-button {
background-color: green;
color: white;
border: none;
padding: 8px 15px 8px 15px;
margin-left: 10px;
margin-right: 10px;
transition: padding 0.5s, margin 0.5s;
}
.stretch-button:hover {
padding: 8px 25px 8px 25px;
cursor: pointer;
margin-left: 0px;
margin-right: 0px;
}
<button class=\"stretch-button\">
One
</button>
<button class=\"stretch-button\">
Two
</button>
<button class=\"stretch-button\">
Three
</button>
但是,在 .stretch-button:hover 下,只要将左右填充从 25 像素更改为 - 例如 - 24 像素(或基本上是 25 像素以下的任何内容),代码就不再起作用,并且按钮在一个时移动正在被拉伸。
为什么呢?我在悬停部分将边距设置为 0,我很困惑。
希望有人能给我解释一下原因!
-
它也停止使用 OVER 25px 的填充,如 26px;
-
没错,我也注意到了。但是你能解释一下为什么吗?不幸的是我不明白原因...
-
如果您将填充设置得太小并且按钮不移动,那么按钮将重叠,html 会阻止这种效果。