获得焦点时如何避免表单元素移动

Jua*_*eza 2 html css

我添加了输入文本获得焦点时的样式。然后,每次文本框获得/失去焦点时,下面的所有其他元素都会移动。

input[type=text]:focus {
  border: 3px solid #555;
  outline-offset: 0;
}
Run Code Online (Sandbox Code Playgroud)
<input id="CodPostal" name="CodPostal" type="text" value placeholder="focus here">
<br/> text
<br/>
<input id="Name" name="Name" type="text" value>
Run Code Online (Sandbox Code Playgroud)

我用谷歌搜索并尝试outline-offset: 0;但没有用

G-C*_*Cyr 6

您可以改用 box-shadow 或 outline

input[id="CodPostal"]:focus {
  box-shadow: 0 0 0 3px #555;
}
/* or */
input[id="Name"]:focus {
  outline: 3px solid #555
}
Run Code Online (Sandbox Code Playgroud)
<input id="CodPostal" name="CodPostal" type="text" value>
<br/> text
<br/>
<input id="Name" name="Name" type="text" value>
Run Code Online (Sandbox Code Playgroud)

https://developer.mozilla.org/en-US/docs/Web/CSS/box-shadow

box-shadowCSS属性元素周围的边框加阴影效果。您可以设置多个以逗号分隔的效果。框阴影由相对于元素的 X 和 Y 偏移、模糊和扩散半径以及颜色来描述。

https://developer.mozilla.org/en-US/docs/Web/CSS/outline

outlineCSS属性是一个速记在一个声明中设置不同的轮廓属性:outline-styleoutline-width,和outline-color

以及关于轮廓偏移

https://developer.mozilla.org/en-US/docs/Web/CSS/outline-offset

outline-offsetCSS属性设置元素的轮廓和边缘或边界之间的空间量。