相信你提出来这个问题,那么肯定知道这两个属性的作用并不相同。
heigth用于指定容器高度,而line-height用于指定行高。事实上这两个东西并不是一回事。在某一个特定的效果下,有可能省略其中一个是可以达到效果的,但是脑袋中一定要清楚,这是两件不同的事情。写CSS并不只是面向效果编程,要不然绝对定位就可以搞定一切,把这两者都写上是为了更清楚地表达你的意图,你是希望这个盒子高度是50px,并且行高也是50px,也即只有一行,并且文字居中。如果只写line-height 50px,是无法清楚地表达这个意图的,如果文字换行的话,效果也会不一样(配合overflow属性)。