栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > Web开发 > Html/CSS > CSS教程

css 不定宽高的元素居中布局解决方案

CSS教程 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

1. 水平居中



公共代码:

html:


    parent
    
child

css:

html, body {
    margin: 0;
    width: 100%;
    height: 100%;

    .parent {
 width: 100%;
 height: 100%;
 background: #fac3fa;
 
 .child {
     width: 50%;
     height: 50%;
     background: #fe9d38;
 }
    }
}

方案一: text-align(父) + inline-block(子)

代码:
css:

.parent {
    text-align: center;

    .child {
 display: inline-block;
    }
}

方案二: 块级元素 + margin: 0 auto;

.child {
    display: block; // 非块级元素时设置
    margin: 0 auto;
}

方案三: absolute + transform

.parent {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

方案四: flex

注: 由于使用flex的关系, 这里去掉了 parent 和

.parent {
    display: flex;
    justify-content: center;
}

2. 垂直居中



公共代码:
html:


    

css:

html, body {
    margin: 0;
    width: 100%;
    height: 100%;
}
.parent {
    display: table-cell;
    width: 800px;
    height: 500px;
    background: #fac3fa;

    .child {
 width: 50%;
 height: 50%;
 background: #fe9d38;
    }
}

方案一: table-cell(父) + vertical-align(子)

.parent {
    display: table-cell;
    vertical-align: middle;
}

方案二: absolute + transform

.parent {
    position: relative;
    
    .child {
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
    }
}

方案三: flex

.parent {
    display: flex;
    align-items: center;
}

3. 水平垂直居中



公共代码同[垂直居中]

常用方案一: absolute + transform

.parent {
    position: relative;
    
    .child {
 position: absolute;
 top: 50%;
 left: 50%;
 transform: translate(-50%, -50%);
    }
}

常用方案二: flex

.parent {
    display: flex;
    align-items: center;
    justify-content: center;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/214987.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号