这是因为你没有设置字体大小,IE或有些浏览器下,会默认有一个字体大小值,所以当你设置height:1px时,还需要设置一下font-size:0px;
另一种解决办法就是用一楼的border-top或者border-bottom来解决。
你可以不设置height,当没有数据的时候把display这个属性值设置为none。这样没有数据这个区域将不会显示。
可以方便问下你设置1px的想要实现什么效果呢?
如果单纯的想实现一个像素的横线,直接用border-bottom:1px solid #000;