一般情况下,行内元素设置宽高是无效的,常见的有a标签。img和input也属于行内元素,但他们却可以设置宽高!!!!
查阅了一些资料才明白,原来css的元素还有另外一种分类方法,可替换元素,不可替换元素。
a)可替换元素
浏览器根据标签的属性来决定元素的具体显示内容。如img标签,浏览器通过src属性读取图片信息(包括图片的宽高)来显示出来。input标签,通过它的type属性来决定它是文本域(type="text'),还是提交按钮(type="submit")等,对于表单元素,浏览器也有默认的样式,包括宽度和高度。所以替换元素一般存在width和height属性,可以设置或更改其宽高。
b)不可替换元素
大多数元素为不可替换元素,其内容直接表现给客户端(浏览器);
几乎大部分可替换元素都为行内元素,如img,input。所以这也就是为什么行内元素img,input可以设置宽高的原因了。