javascript - CSS 问题 : Chrome adds 3px extra margin-right to text field

标签 javascript jquery html css google-chrome

enter image description here

我有 3 个文本字段。他们每个人都有 margin-right: 5px。谷歌浏览器会自动在每个元素的右边距上添加 3-4 像素。我不知道如何解决这个问题。我注意到这一点是因为当我使用 JQUERY 在点击事件上生成更多文本字段时。我没有看到这些额外的 margin 。这些额外的边距仅在元素从我的 HTML 呈现时添加,而不是从我的 Javascript 中的字符串呈现。任何想法?谢谢。

HTML:

<input type="text" class="text_input" name="field_class_0" />
<input type="text" class="text_input" name="field_book_title_0" />
<input type="text" class="text_input" name="field_isbn_0" />

CSS:

.text_input {
margin: 0 5px 5px 0;
padding: 5px 7px;
}

https://jsfiddle.net/3g42rjdp/2/

最佳答案

尽管这可能取决于浏览器版本,但 Chrome 通常对 input 元素具有以下 CSS 规则:

-webkit-appearance: textfield;
background-color: white;
border-image-source: initial;
border-image-slice: initial;
border-image-width: initial;
border-image-outset: initial;
border-image-repeat: initial;
-webkit-rtl-ordering: logical;
-webkit-user-select: text;
cursor: auto;
padding: 1px;
border: 2px inset;

这些用于inputtextareakeygenselectbutton:

text-rendering: auto;
color: initial;
letter-spacing: normal;
word-spacing: normal;
text-transform: none;
text-indent: 0px;
text-shadow: none;
display: inline-block;
text-align: start;
margin: 0em 0em 0em 0em;
font: 13.3333px Arial;

这用于inputtextareakeygenselectbutton , meter, progress:

-webkit-writing-mode: horizontal-tb;

因此,这与浏览器样式表规则无关。

更新

如果你添加一个空格

  • 空间
  • 标签
  • newine ( 这是你的情况 )

它们之间会出现缝隙。

视情况而定,您可以使用以下任一方法来消除间隙:

  • 添加一个负的margin-left
  • 使用 float
  • 去掉元素之间的空白,可以做到:

    1- 将主题放在一行

    <input type="text"><input type="text"><input type="text">
    

    2- 删除空格(别担心,这是正确的!:))

    <input type="text"><
    input type="text"><
    input type="text">
    

    3- 使用 HTML 注释

    <input type="text"><!--
    --><input type="text">
    

    我建议您使用1 号 方法(将主题放在一行中),但两者都可以。

关于javascript - CSS 问题 : Chrome adds 3px extra margin-right to text field,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35247228/

相关文章:

javascript - 为什么这个数组会在没有被要求的情况下改变它的值?

javascript - $parent.$index 始终返回 0

jquery - 如何使用 JQuery 获得单选按钮选择?

html - Bootstrap col-md-3 div 连续取最后一个 col-md-3 的相对高度

javascript - 如何重复函数来放置另一个innerHTML?

javascript - MongoDB 在本地运行还是通过 Atlas 运行?

javascript - 如何在单击时分别为每个元素设置动画?

javascript - 如何使用 jQuery 强制对 GET 请求进行字符串响应?

javascript - 更新 svg 和 d3 中的路径样式

Python `beautifulsoup` 提取缺少 `class` 的 url,其他属性?