在div中设置文字与内部div垂直居中

要实现如图一所示的结果:

html代码如下:

复制代码
<!DOCTYPE html>
<html>

<head lang="zh">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta charset="utf-8" />
    <title>商品管理后台首页</title>
    <link rel="stylesheet" href="./css/index.css" />
</head>

<body>
    <div class="content">
        <span>这是一个测试要居中</span>
        <div class="box">我是div中的文字</div>
    </div>
</body>

</html>
复制代码

相应的less代码

复制代码
.content{
    width: 500px;
    height: 200px;
    border:1px solid red;
    position: relative;
    line-height: 200px;/*让class=content父div中的文字垂直居中*/
    span{
        background: green;
    }
    .box{
        background: yellow;
        float: left;
        width: 200px;
        height: 100px;
        line-height: 100px;/*让黄色div中的文字内容垂直居中*/
        text-align: center;/*让文字水平居中*/
        position: absolute;
        top:50%;
        margin-top: -50px;
        margin-left: 200px;    
    }
}
复制代码


②使用vertical-align:middle设置在父元素中的位置,

效果图:

html代码:

复制代码
<!DOCTYPE html>
<html>
<head lang="zh">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta charset="utf-8" />
    <title>商品管理后台首页</title>
    <link rel="stylesheet" href="./css/index.css" />
</head>

<body>
    <div class="content">
        我是div中的文字<div class="pox">我是子元素的文字</div>
    </div>
</body>

</html>
复制代码

相应的css代码:

复制代码
.content{
    width: 500px;
    height: 200px;
    line-height: 200px;/*设置其文字内容垂直居中*/
    border:1px solid red;
    .pox{
        background: yellow;
        width: 200px;
        height: 70px;
        display: inline-block; /*一定要将div设置为inline-block*/
        vertical-align: middle;/*设置该元素在父元素中的位置*/
        line-height: 70px;
        border: 1px solid green;
        text-align: center;
    }
}
复制代码

 化简后的核心代码:

复制代码
.content{
    width: 500px;
    height: 200px;
    line-height: 200px;/*设置其文字内容垂直居中*/
    background:red;
    .pox{
        height: 70px;/*给内部div设置了高度,该div才会垂直居中*/
         display: inline-block; /*一定要将div设置为inline-block*/
        vertical-align: middle;/*设置该元素在父元素中的位置*/
        background: yellow;
    }
}            
复制代码

 

posted @   小猪冒泡  阅读(235348)  评论(2编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示