稀土掘金 稀土掘金

CSS-常用元素垂直居中方法

居中元素宽高未知

image.png

1.flex布局

<style>
    .parent {   
        width: 300px;
        height: 300px;
        background-color: yellow;
        display: flex;   /* 父元素设置flex布局 */
        justify-content: center;
        align-items: center;
    }
    .son {
        background-color: pink;
    }
</style>

2.绝对定位 + tranform

    <style>
        .parent {
            width: 200px;
            height: 200px;
            background-color: yellow;
            position: relative;  /* 相对定位 */
        }
        .son {
            background-color: pink;
            position: absolute; /* 绝对定位 */
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);   /* 会将元素位移自己宽度和高度的-50% */
        }
    </style>

3.grid网格布局

    <style>
        .parent {
            width: 200px;
            height: 200px;
            background-color: yellow;
            display: grid;  /* 网格布局 */
            justify-content: center;
            align-items: center;      
        }
        .son {
            background-color: pink;
        }
    </style>

居中元素宽高已知

4.绝对定位 + margin:auto

margin的值为auto的具体含义:

  • auto意为自动填充。以margin:0,auto;为例,程序会自动计算剩余左右两部分的空白长度,把其等分再作为div左右的外边距。所以我们可以使用此行代码使得div居中。
  • margin:auto只能水平居中不能垂直居中:块级元素在默认情况下会占据整行空间,设置auto时,元素左右尚有空缺,可以看到居中效果,但上下已经没有空缺了
<style>
    .parent {
        width: 200px;
        height: 200px;
        background-color: yellow;
        position: relative;  /* 父盒子相对定位 */
    }
    .son {
        width: 100px;
        height: 100px;
        background-color: pink;
        position: absolute;  /* 子元素绝对定位 */
        left: 0;  /* 子元素外边距设置为0  四个定位属性的值设置为0,子盒子设置宽高,则显示图1(水平垂直居中)*/
        right: 0;
        top: 0;
        bottom: 0;
        margin: auto;   
    }
</style>

元素宽高未知情况下

    <style>
        .parent {
            width: 200px;
            height: 200px;
            background-color: yellow;
            position: relative;  /* 父盒子相对定位 */
        }
        .son {
            /* width: 100px;
            height: 100px; */
            background-color: pink;
            position: absolute;  /* 子元素绝对定位 */
            left: 0;  /* 子元素外边距设置为0  四个定位属性的值设置为0,子盒子没有设置宽高,则会被拉开到和父级一样宽高*/
            right: 0;
            top: 0;
            bottom: 0;
            margin: auto;   
        }
    </style>

image.png

补充:内联元素的居中

水平居中

  • 行内元素可设置:text-align: center
  • flex布局设置父元素:display: flex; justify-content: center

垂直居中

  • 单行文本父元素确认高度:height:line-height
  • 多行文本父元素确认高度:display: table-cell; vertical-align: middle

image.png

<head>
    <title>Document</title>
    <style>
        .parent {
            width: 200px;
            height: 200px;
            background-color: yellow;
            text-align: center;  /* 父元素设置 */
        }
    </style>
</head>
<body>
    <div class="parent">
        <span class="son">123</span>
    </div>
</body>

玻璃钢生产厂家绍兴玻璃钢广场雕塑厂家供应长沙新春商场美陈四川方形玻璃钢花盆玻璃钢人像雕塑批发代理抽象玻璃钢人物雕塑定做吉安景观玻璃钢雕塑上海白色玻璃钢花盆莆田园林玻璃钢雕塑直销商场秋收美陈布置学校玻璃钢仿铜雕塑报价芜湖玻璃钢雕塑设计价格南浔玻璃钢造型雕塑淄博市玻璃钢雕塑玻璃钢花盆模具制作过程昆明美陈商场沧州玻璃钢海豚雕塑价格新郑附近玻璃钢雕塑仿铜玻璃钢雕塑施工辽宁商场创意商业美陈价格柘荣玻璃钢花盆花器安徽多彩玻璃钢雕塑定做价格大连中国玻璃钢雕塑柳州玻璃钢雕塑制作厂家北京专业玻璃钢雕塑海淀玻璃钢卡通雕塑长沙玻璃钢雕塑定制厂家镂空玻璃钢雕塑报价四川卡通玻璃钢雕塑工厂苏州玻璃钢卡通雕塑四川玻璃钢雕塑销售厂家香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化