我有非常非常简单的HTML,通常HTML中的所有内容似乎都应该正常工作,但在这种情况下,它不会。我认为标签的大小应该继承子图像标签。但在下面的情况中,尺寸是不同的。
HTML:
<a href="."><img src="some image"></a>
的CSS:
a {
border: 1px solid #000;
width: auto;
height: auto;
}
img {
border: 1px solid #F00;
}
为什么<a>
不会继承图像的大小? (见:http://jsfiddle.net/49ykj/)
到目前为止,Firefox和Chrome都会出现这种情况,因此我认为它适用于所有浏览器。这是一个错误吗?为什么不应该是一个错误?
答案 0 :(得分:6)
这是因为a
是内联元素,而img
是内联块元素。将display
元素的css a
属性更改为内联块,您会注意到它们具有相同的大小。
这不是一个错误。它只是css的本质以及大多数浏览器以这种方式初始化两个元素css属性的事实。