vertical-align的浅谈

本文深入探讨了vertical-align属性在网页布局中的作用,揭示了其表现与父标签的关系,以及如何通过该属性实现元素的垂直对齐。通过实例分析,详细解释了middle、top等值的应用场景与效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考文章:http://www.zhangxinxu.com/wordpress/?p=813

只从开始用display:inline-block之后,vertical-align一直是一个让我头痛的问题,因为有时候它行得通,有时候又行不通,虽然一直尝试,也没得出一个结论。

查阅了一些资料,加上这篇文章,有了点认识。

首先,我知道vertical-align属性是:

该属性定义行内元素的基线相对于该元素所在行的基线的垂直对齐。允许指定负长度值和百分比值。这会使元素降低而不是升高。在表单元格中,这个属性会设置单元格框中的单元格内容的对齐方式。

然后vertical-align:middle属性的表现与否,仅仅与其父标签有关,至于我们通常看到的与后面的文字垂直居中显示那都是假象!

这是文章中的一句话,并且在文章中有论证,而我想在这里写的是我之前的发现,

1、首先,总是会有一个元素以vertical-align:top存在的,起码形式上是,就算给它明确定义了vertical-align:middle 它也首先会表现为vertical-align:top,因为两者并不冲突。top是相对于父元素而言的,middle则是相对它的兄弟元素所造成的基线而言的。这个元素一般是height最大的元素,(由它撑起一片天),如果有两个一样height的元素,那么未定义的那个撑起天,若都定义了,相对于基线离得最高最远的那个为改元素

2、父元素的基线是由大部分文字元素的基线决定的。

3、再撑起一片天的那个元素的庇护下,其他的元素才进行上下移动:

当图片为baseline的时候,文字为baseline的时候,图片底部会相对于文字的baseline对齐

当图片为Middle,文字为baseline的时候,图片的中点,会相对于文字小写x的中点(这一点文章那里说错了)对齐

当图片为baseline,文字为Middle的时候,图片事实上还是相对于文字baseline对齐的,也就是如文章所说的,vertical-aglin事实上是相对于父元素的,因此图片为baseline的时候,它的底部就应该相对于父元素的baseline对齐,也就是文字的baseline。

前面所说的事实上有点偏差,因为单文字为Middle的时候,文字事实上会下移,或者是图片上移,也就是说图片的底部不再对准文字的baseline了,而是baselien上面的一点,具体这点值多少,还没验证出来。

根据文章所说的,其实可以用vertical-aling:像素值来纠正一点误差,达到你想要的理想效果。

以上是一点浅谈,望批评指正。

关于vertical-align的一些具体的属性值,可以点这里


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值