2012-07-19 128 views
2
<div style="line-height:100px; height:100px;"> 
    <span style="vertical-align:middle;">test</span> 
</div> 

只有當跨度中指定了vertical-align:middle時,以上html會產生與下面不同的結果。垂直居中線高

<div style="height:100px;"> 
    <span style="line-height:100px; vertical-align:middle;">test</span> 
</div> 

在chrome和firefox上放下1px,在ie8上放下2px。

它爲什麼不同?

+1

我的猜測是不同的瀏覽器會以不同的方式解釋行高。當然,我可能在這裏錯了 – asprin 2012-07-19 12:14:46

+0

我同意阿斯匹林。 – 2012-07-19 12:56:37

回答

1

問題是div標籤的默認border-width設置它0px,然後看到更改。

0

SPAN和DIV元素之間的主要區別在於SPAN不會對它自己進行任何格式化。 DIV元素包含一個分段符。 SPAN元素只是告訴瀏覽器將樣式規則應用於SPAN中的任何內容。

我在想,因爲格式化的一點點div可能是不同的。

+0

我的問題是爲什麼當'line-height'應用到'div'的時候渲染是不同的,當它應用到'span'時。這不是特定於IE。它在Chrome和Firefox上有1px的差異,在ie8上有2px的差異。 – alice 2012-07-19 13:21:43

+0

哦,哦,對不起,我誤解了這個問題。請忽略。但有些回答你的問題,我編輯了我的問題 – 2012-07-19 13:26:45