参考这里吧http://www.jsann.com/post/ie_layout_detailed.html
实际上我自己也说不清楚,就说说自己的理解吧:layout是IE的特有属性,而且还是隐藏属性,有些元素默认就有这个属性,有些是没有这个属性的。因为是隐藏属性,所以在写CSS代码的时候,不是写layout="XXXX",而是通过hasLayout="true"来触发该元素具有layout属性,实际上还可以通过其他方式来触发,比如设置宽高等等。这里说说我的理解,layout属性不像其他属性那样有一系列可选值来赋值给这个属性,看起来更像是这个元素到底有没有这个属性,那为什么当初不设置成hasLayout="true|false",这样不是好理解多了吗???但是实际上元素一旦获取了layout属性,就没有办法失去该属性了,也就是说hasLayout="false"是没有任何效果的。。。(应该没有错吧,我记得是这样的)
剩下的需要考虑的就是一旦有了layout属性有什么用处呢?我干嘛要这个属性啊。实际上用处是反过来的,你没有这个属性,许多其他工作都不能正常完成,具体有什么影响参考那个链接吧,或者自己百度一下。