添加边框时 CSS Div 跳转

标签 css layout

我不明白为什么当我将鼠标悬停在第一个框(左上角)上时框会移动。我已将 box-sizing 设置为 border-box,因此悬停时添加的边框不会产生影响,而且它只发生在第一个框上。请帮忙!

JS fiddle here.

* {
  box-sizing: border-box !important;
}

body{
    font-family: Arial, Helvetica, sans-serif;
}

#gameArea {
  width: 700px;
  margin: 0 auto;
}

h1{
    text-align: center;
}

.card {
  float: left;
  margin: 10px;
    padding: 20px;
  background: lightblue;
  text-align: center;
  border-radius: 5px;
  box-shadow: 10px 10px 10px #ccc;
}

.hidden{
    display: none;
}

.card:hover {
  cursor: pointer;
  border: 3px solid blue;
}

.card p {
  font-size: 48px;
  color: blue;
}

img {
    width: 250px;
    height: 188px;
    vertical-align: middle;
}

.helper {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
        margin:0;
}

最佳答案

这是因为边框宽度增加了元素的宽度,因此当悬停时向元素添加额外的宽度时,它会改变正常的布局流程。

您可以通过在静态下添加一个 3px 透明边框来轻松修复它:

.card { border: 3px solid transparent; }

jsFiddle 分支:https://jsfiddle.net/azizn/pL2j0zu5/

关于添加边框时 CSS Div 跳转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39043432/

相关文章:

c# - 在 Razor 中将 css 与 c# mvc 混合

java - 选择布局管理器

jquery - 使用 jquery 的 CSS 背景图像转换

html - 为什么我的页脚不会转到页面底部?

html - 单击后包含 HTML 图像大小

java - Android 动态按钮布局

Android 选项卡式布局 - 如何有子部分链接?

html - 具有背景和百分比边框宽度的 CSS 环

android - 在 Eclipse 中解析 XML 时出现未绑定(bind)前缀错误

apache-flex - 设置显式宽度后将 flex 标签宽度重置为 "auto"?