首页 > 其他分享 >CSS 实现垂直居中的5种方法

CSS 实现垂直居中的5种方法

时间:2023-04-11 15:36:47浏览次数:36  
标签:居中 color 300px height 垂直 width background margin CSS

方法1:使用绝对定位和负外边距对块级元素进行垂直居中             优点:兼容不错。缺点:必须提前知道被居中块级元素的尺寸

       .father {
            width: 300px;
            height: 300px;
            background-color: red;
            position: relative;
            margin-bottom: 10px;
        }

        #child1 {
            width: 100px;
            height: 100px;
            position: absolute;
            top: 50%;
            left: 50%;
            margin-left: -50px;
            margin-top: -50px;
            background-color: green;
        }

    <div class="father">
        <div id="child1"></div>
    </div> 
方法2:使用绝对定位和transform             优点:不必提前知道被居中的元素的尺寸
        .father {
            width: 300px;
            height: 300px;
            background-color: red;
            position: relative;
            margin-bottom: 10px;
        }
        #child2 {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background-color: green;
        }

<div class="father">
        <div id="child2">内容撑开</div>
    </div>
方法3:绝对定位结合margin:auto
        .father {
            width: 300px;
            height: 300px;
            background-color: red;
            position: relative;
            margin-bottom: 10px;
        }
        #child3 {
            position: absolute;
            height: 100px;
            width: 100px;
            top: 0;
            bottom: 0;
            left: 0;
            right: 0;
            margin: auto;
            background-color: green;
        }

    <div class="father">
        <div id="child3">内容撑开</div>
    </div>
方法4:flex布局
        #father1 {
            width: 300px;
            height: 300px;
            background-color: red;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        #child4 {
            /* width:100px; */
            width: calc(50% + 1px);
            height: 100px;
            background-color: green;
        }

    <div id="father1">
        <div id="child4">123</div>
    </div>
方法5:用table实现
        #father2 {
            width: 300px;
            height: 300px;
            display: table;
            background-color: red;
        }

        #child5 {
            display: table-cell;
            text-align: center;
            /* 水平居中 */
            vertical-align: middle;
            /* 垂直居中*/
        }

    <div id="father2">
        <div id="child5">内容</div>
    </div>

  

 

标签:居中,color,300px,height,垂直,width,background,margin,CSS
From: https://www.cnblogs.com/ducky-L/p/17306389.html

相关文章

  • 【学习笔记】HTML+CSS
    HTMLHTML教程简介编辑器基础元素属性标题段落文本格式化链接头部CSS图像表格列表区块布局表单和输入1、意义:用于收集用户的输入信息表示文档中的一个区域,此区域包含交互控件,将用户收集到的信息发送到Web服务器一个文本字段的默认宽度是20个字符2、form......
  • Element Plus错误警告 | Popper: Detected CSS transitions on at least one of the f
    这个错误的解决方案如下:1.禁用"computeStyles"修饰符的adaptive选项:这将允许平滑过渡,但可能会降低性能。禁用"computeStyles"修饰符的adaptive选项,可以在创建Popper实例时指定modifiers参数,并将computeStyles的adaptive属性设置为false。示例如下:import{c......
  • CSS 属性 选择器
     具有特定属性的HTML元素样式具有特定属性的HTML元素样式不仅仅是class和id。注意:IE7和IE8需声明!DOCTYPE才支持属性选择器!IE6和更低的版本不支持属性选择器。属性选择器下面的例子是把包含标题(title)的所有元素变为蓝色:实例[title]{color:blue;}https://www.lekaowang......
  • css强制换行 css强制不换行的css方法
    以前总结过Div的换行和不换行的css写法。但对于表格单元格只知道一个属性nowrap可以使其不换行。近日有此需要,但发现加上nowrap在某些情况下还是会换行!无奈,没有一个强制不换行的方法吗?baidu了一下,令俺非常欣慰,还真的找到了办法,问题解决了。用CSS实现表格单元格数据自动换行或不......
  • css 清楚浮动的4种办法
    1、浮动:浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。         由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样2、我们使用position:fixed,absolute和float都会造成浮动效果。3、clear属......
  • css 实现单行、多行溢出 省略号显示
    1、单行溢出显示省略号:{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}2、多行溢出省略号:①、(缺点:此方法因为使用了webkit属性,故只能chrome等浏览器有效){-webkit-line-clamp:2;/*autoprefixer:off*/-webkit-box-orient:vertical;//防......
  • CSS 颜色定义
    CSS颜色定义方法:(RGBA\ HSLA\opacity\transparent为css3新特性)1、直接使用颜色名/16进制值2、使用RGBA:RGB代表光的三原色,Red、Green和Blue,CSS3中可以增加一个值a(alpha),表示颜色的透明度:取值范围0-1之间,0代表完全透明,1代表完全不透明3、使用HSL: 即色相、饱和度、亮度......
  • 新的 CSS 伪类函数 :is() 和 :where()
    新的CSS伪类函数:is()和:where()Postedon 2022-08-1514:39  书中枫叶 阅读(48) 评论(0)  编辑  收藏  举报:is()和:where()标题中的 <b> 标签进行颜色调整: h1>b,h2>b,h3>b,h4>b,h5>b,h6>b{ color:hotpink; }......
  • CSS实现单行或者多行文本溢出隐藏并且显示省略号
    一、单行超出显示省略号如果文字超出父元素指定宽度,文字会自动换行,而连续不间断数字和英文字母(没有其他字符)不会自动换行;详细步骤:第一步(不换行):white-space:nowrop;(对于连续的数字或者英文字母可省略)第二步(溢出隐藏)overflow:hidden;第三步(文本溢出显示省略号)text-overflow:ellip......
  • 如何通css实现 渐变下划线,以及交互动画
    <h2class="title"><span>围殴围殴我饿我饿我饿哦我饿围围殴围殴我饿我饿我饿哦我饿围殴围殴我饿我饿我饿哦我饿我饿围殴围殴殴围殴我饿我饿我饿哦我饿我饿围殴围殴</span></h2>css:.title{line-height:2;color:#333;}.titlespan{font-weight:800;backgro......