display: table 实现menu等高居中排列

本文介绍了一种使用CSS实现左侧栏菜单居中的方法,通过将li元素设置为display:table,并将其子元素span设置为display:table-cell来实现垂直居中。此外,还介绍了如何通过增加span元素并设置宽度百分比来实现多行多列居中对齐布局。

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

display: table 属性,顾名思义,就是就像表格一样陈列元素,设置这个属性之后,就具有了表格所特有的某些特性,比如居中对齐之类的。

本篇文章要实现的需求也是非常常见的——左侧栏menu菜单居中显示,效果如下图所示

具体的代码如下

<ul>
<li><span class="text">苹果</span></li>
<li><span class="text">橘子</span></li>
<li><span class="text">梨子</span></li>
<li><span class="text">桃子</span></li>
</ul>

 

具体的css如下

li{
    display: table;
    height: 54px;
    width: 56px;
}
.text {
    display: table-cell;
    width: 56px;
    vertical-align: middle;
    border-bottom: 1px solid black;
    text-align: center;
    color:red;
}

实现原理就是:

1. 每个li元素 设置为display:table

2. li元素下面的span设置为display:table-cell;这里的table-cell就相当于每一个td元素,然后再设置vertical-align: middle ,即可实现居中对齐

 

如果要实现多行多列居中对齐布局,也就是下面这个效果,只需要增加多一个span,给每个span设置宽度百分比,还可以实现按比例分配

<li><span class="text">苹果</span>&nbsp;<span class="text">苹果</span></li>
<li><span class="text">橘子</span>&nbsp;<span class="text">苹果</span></li>
<li><span class="text">梨子</span>&nbsp;<span class="text">苹果</span></li>
<li><span class="text">桃子</span>&nbsp;<span class="text">苹果</span></li>

 

转载于:https://www.cnblogs.com/daisygogogo/p/8967411.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值