国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > CSS > 正文

CSS標(biāo)準(zhǔn):vertical-align屬性

2020-03-24 19:11:44
字體:
供稿:網(wǎng)友

最近幾天仔細(xì)研究了一下vertical-align這個屬性,結(jié)果讓我大吃一驚,這個很 資深 的CSS標(biāo)準(zhǔn)竟然在各個瀏覽器里面的表現(xiàn)都各不相同。
vertical-align的值有點(diǎn)多,包括 baseline sub supper top text-top bottom text-bottom middle以及各種長度值(%,em,ex等等)。我先給大家看一個我覺得最夸張的值:bottom。代碼如下:
p {
font-size: 18px;
line-height: 36px;
font-family: Tahoma, sans-serif;
}
img {
vertical-align: bottom ;
}
然后大家看一看這段CSS在各個瀏覽器中的效果(圖片是我故意做成那個樣子,為了可以看清楚相對位置):
呃,這個結(jié)果其實(shí)很讓人匪夷所思,一般我會認(rèn)為Firefox會比IE解釋得更正確,但是看過Opera之后發(fā)現(xiàn)它和IE是一樣的,而Safari/Win是站在Firefox那邊。說實(shí)話,我不知道這是怎么回事。
仔細(xì)學(xué)習(xí)了《CSS權(quán)威指南(第二版)》,甚至還去查閱了 W3C ,然后自己做出一個關(guān)于vertical-align的圖:
按照W3C的定義,當(dāng)內(nèi)聯(lián)元素的vertical-align設(shè)置為:
baseline, top, bottom的時候,都是該元素的baseline(或middle, top, bottom)對其周圍元素的相同位置,如圖片的top和周圍文字的top對齊。 text-top和text-bottom的時候,是該元素的top(或bottom)對齊周圍元素的text-top(或text-bottom)。 長度(%, em, ex)的時候,是基于baseline往上移動,所以正數(shù)往上,負(fù)數(shù)往下。 middle的時候,是該元素的中心對齊周圍元素的中心。這里 中心 的定義是:圖片當(dāng)然就是height的一半的位置,而文字應(yīng)該是基于baseline往上移動0.5ex,亦即 小寫字母 x 的正中心 。但是很多瀏覽器往往把ex這個單位定義為0.5em,以至于其實(shí)不一定是x的正中心(以上圖為例,x的高度應(yīng)該是10px,而em是18px,所以兩個值不一樣)。

但是,即使是按照上面的準(zhǔn)則,各個瀏覽器的解釋如此迥異也讓我匪夷所思。我也懶得去研究為什么是這樣子。總的來說呢,應(yīng)該就是它們對字體的每一條線的位置的定義都不大一樣,所以這個問題不單跟vertical-align有關(guān),而跟瀏覽器對內(nèi)聯(lián)文本和內(nèi)聯(lián)圖片的結(jié)構(gòu)的解釋有很大關(guān)系。
最后給大家一個測試頁面,可以方面的看看各個瀏覽器對vertical-align不同值的解釋結(jié)果。
http://www.mikkolee.com/weblab/001_vertical/
大家可以測試一下其他的值,比如middle或是text-top,也是各個瀏覽器完全不一樣。有什么心得大家來討論一下吧~~html教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 神农架林区| 鄂托克旗| 永济市| 合江县| 桦川县| 曲周县| 通渭县| 陇川县| 鄯善县| 耒阳市| 固始县| 定结县| 正蓝旗| 寿阳县| 塘沽区| 云梦县| 贵溪市| 刚察县| 阜阳市| 聂拉木县| 柘城县| 灵武市| 大丰市| 惠水县| 额尔古纳市| 基隆市| 翼城县| 抚顺县| 宣武区| 手游| 和静县| 江源县| 纳雍县| 陆河县| 高邮市| 西平县| 清涧县| 佛学| 康保县| 综艺| 墨江|