Input 为什么不是';t<;输入>;我在CSS中设置了什么?

Input 为什么不是';t<;输入>;我在CSS中设置了什么?,input,css,Input,Css,我在CSS中显式地设置了元素的行高度属性。但是当我检查firebug中的元素时,这个元素的行高值不是我在CSS中设置的值。而且,行高值似乎与我在CSS中设置的内容无关。可能的原因是什么?firefox不会呈现线宽,但我认为IE会呈现线宽。有一个小技巧可以做到,就是让线宽样式呈现为块元素,而不是内联元素 例如: 这行不通 span {font-size:12px; line-height:14px} 但这将: span {font-size:12px; line-height:14px; di

我在CSS中显式地设置了
元素的
行高度属性。但是当我检查firebug中的元素时,这个元素的
行高
值不是我在CSS中设置的值。而且,行高值似乎与我在CSS中设置的内容无关。可能的原因是什么?

firefox不会呈现线宽,但我认为IE会呈现线宽。有一个小技巧可以做到,就是让线宽样式呈现为块元素,而不是内联元素

例如:

这行不通

span {font-size:12px; line-height:14px} 
但这将:

span {font-size:12px; line-height:14px; display:block;}
根据CSS 2.1规范中的定义,它对块容器元素有特定的含义,对未替换的内联元素有不同的含义。我在那里找不到任何关于替换的内联元素的语句,而
input
元素可以被视为替换的元素,这在某种程度上是有争议的


无论如何,尽管看起来很奇怪,浏览器似乎忽略了
输入
元素上的
行高
。作为解决方案,您可以考虑设置<代码>高度>代码>属性,或者设置垂直填充。但是不同浏览器的结果并不一致。根据经验,我们应该期望在浏览器的控制下将文本输入框呈现给,尽管在某些情况下,某些功能可以使用CSS进行调整。

不确定这是否是重点,但我指定了边距、填充和去掉边框,在这里您得到了14px:

如果您检查开发工具,则它(以及在指定上述内容之前)正好是14px:

(chrome开发工具) (ff中的萤火虫)

这种情况下的原因可能是输入字段具有指定的id或类

<input id="someID"/> 
在css中的其他地方,您可能试图通过设置

input {line-height: 14px;}

如果不是这样的话,我就没有主意了:)

lol.要求在这里投反对票。没有任何描述。你基本上是在说“我对CSS有问题,为什么?”我们能看看你的相关代码吗?如果不知道实际发生了什么,就很难进行调试@JacksonGariety值得投票,但不要居高临下。为了帮助OP,我做了一个jsfiddle来说明这个问题。如果您使用Firefox查询输入元素,您将看到行高度不是我指定的。和
!重要提示
没有帮助。有人吗?表示线条高度适用于:所有元素。此答案包含信息缺失,实际上没有多大帮助。除非我们讨论的是IE6/7,否则在IE或Firefox中处理行高的方式没有什么特别的区别,但我只能假设这一点根本不相关。“把你的线高度‘包装’在一块区域”不是正确的措辞,我怀疑你对这个问题是否有清楚的理解。有关lin height如何工作的真实信息,请参见
input {line-height: 14px;}