您需要设置vertical-align
为两个元素的值相同。
height
和width
attribut对于input
元素无效。
要保持给定的边界在height
之内,您需要通过box-sizing
重置箱型号。
DEMO
Basicly你的CSS变成是:
input, img {
vertical-align:middle;/* or whatever else value */
box-sizing:border-box
}
input {
height:30px;
width:20px;
}
为了澄清有关height
和width
属性输入型= “文本”:从
报价:http://www.w3.org/wiki/HTML/Elements/input
4.10.5.1.2文本(类型=文本)状态和搜索状态(类型=搜索)
当输入元素的类型属性是在文本状态或搜索状态,本节中的规则适用。
input元素表示元素值的单行纯文本编辑控件。
文本状态和搜索状态之间的区别主要是文体上的:在搜索字段与常规文本字段不同的平台上,搜索状态可能会导致与平台搜索字段一致的外观,而不是像常规文本域。
如果元素是可变的,它的值应该由用户编辑。用户代理不允许用户在元素的值中插入“LF”(U + 000A)或“CR”(U + 000D)字符。
如果元素是可变的,则用户代理应该允许用户改变元素的书写方向,将其设置为从左到右书写方向或从右到左书写方向。如果用户这样做,用户代理必须然后运行以下步骤:
Set the element's dir attribute to "ltr" if the user selected a left-to-right writing direction, and "rtl" if the user selected a right-to-left writing direction.
Queue a task to fire a simple event that bubbles named input at the input element.
value属性,如果指定,则必须有一个不包含“LF”(U + 000A)的值或“CR”( U + 000D)字符。
值清理算法如下所示:从值中删除换行符。
以下常用输入元素内容属性,IDL属性和方法适用于元素:自动完成,目录名,列表,最大长度,最小长度,模式,占位符,只读,必需和大小内容属性; list,selectionStart,selectionEnd,selectionDirection和value IDL属性; select(),setRangeText()和setSelectionRange()方法。
值IDL属性处于模式值。
输入和更改事件适用。
以下内容属性不得指定,不适用于元素:accept,alt,checked,formaction,formenctype,formmethod,formnovalidate,formtarget,height,max,min,multiple,src,step和width 。
以下IDL属性和方法不适用于元素:checked,files,valueAsDate和valueAsNumber IDL属性; stepDown()和stepUp()方法。报价
我需要给img一个box-sizing:border-box,或者它不是必需的吗?对我来说,它只是在输入一个框的大小:边框 – user2719875
顺便说一下,在这里:http://www.w3schools.com/tags/att_input_height.asp它给输入元素的宽度和高度。如果您可以向我发送无效的文档,可以吗? – user2719875
它只是不起作用,这对我来说很好,告诉它不是相关/有效的方式。除此之外,如果有一个我不信任的网站,它就是W3schools,与w3C没有任何关系,并且有太多过时的,过时的页面:) –