关于background-position

最近在作 《精通CSS》读书笔记,写到第3章关于背景的时候,顺便补充一点关于background-position的问题。

CSS1和CSS2.1(依照目前浏览器普遍的实现方式)有差异。CSS1规范中,背景位置是content区域算起,而CSS2.1中是padding区域算起。实际上在CSS3的background module中,在已有的background-position、background-attachment和background-repeat之外,增加了几个background属性,来决定背景的定位,包括:

background-origin: border | padding | content

background-clip: border | padding

background-origin表示背景的position从哪里算起,CSS1相当于background-origin:content,而CSS2.1相当于background-origin:padding。background-clip表示背景延伸到哪个部分,CSS1和CSS2.1都是background-clip:border。

但是,如你所料,IE又是特例。

IE6中,普通的block元素的背景相当于:
background-origin:border; background-clip:border;
而hasLayout的元素的背景则相当于:
background-origin:padding; background-clip:padding;

总之,IE6在任何情况下,既不符合CSS1也不符合CSS2.1。

你可能感兴趣的:(浏览器,css,IE,Blog,读书)