美文网首页
水平居中和垂直居中

水平居中和垂直居中

作者: gofanelena | 来源:发表于2017-04-10 17:04 被阅读0次

html页面结构如下,仅讨论块状元素的居中问题,div的父元素为body,改成其他元素同理

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <div id="mydiv"></div>
</body>
</html>

DIV仅水平居中
让一个DIV水平居中,直接用CSS就可以做到。* 为了让div能够看到,我们需要为其设置颜色和高度才能在页面可见,宽度如果不设置默认是继承父元素的宽度 * 只要设置了DIV的宽度,然后使用margin设置边距0 auto或者auto,CSS自动算出左右边距,使得DIV居中。

#mydiv{
    margin:0 auto;
    width:400px;
    height:200px;
    background:#ccc;
}

水平居中效果如下:

Paste_Image.png
DIV水平和垂直都居中
  1. 绝对定位法
#mydiv{
    width:400px;
    height:200px;
    background:#ccc;
    position:absolute;
    margin:auto;
    left:0;
    right:0;
    top:0;
    bottom:0;
}
  1. 负边距补全法
    此法要让DIV水平和垂直居中,必需知道该DIV的宽度和高度,然后设置定位为绝对定位,距离页面窗口左边框和上边框的距离设置为50%,这个50%就是指页面窗口的宽度和高度的50%,最后将该DIV分别左移和上移,左移和上移的大小就是该DIV宽度和高度的一半。
#mydiv{
    position:absolute;
    width:400px;
    height:200px;
    background:#ccc;
    left:50%;
    top:50%;
    margin:-100px 0 0 -200px;
}
注意:

这儿的负边距补充也可以使用css3的transform属性实现:

#mydiv{
    position:absolute;
    width:400px;
    height:200px;
    background:#ccc;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
}

1,2的效果如下:


Paste_Image.png

相关文章

  • css水平居中和水平垂直居中

    水平居中和水平垂直居中demo

  • 常用的居中方法

    本文将介绍的居中方法有 ,水平居中,垂直居中和水平垂直居中。 一水平居中 二水平垂直居中

  • css 居中

    居中有水平居中和垂直居中。 水平居中+垂直居中 flex法 position法 就是计算呗~ 参考 CSS各种居中...

  • 居中对齐

    行内元素居中[#hang]垂直居中[#hc]水平居中[#hs] 块级元素居中[#kuai]垂直居中[#kc]水平居...

  • 水平居中与垂直居中

    水平居中和垂直居中可以说是在开发中经常遇到的问题,网上搜索水平居中和垂直居中的方法有很多,有的方法并不是很好,所以...

  • 实现元素水平居中的五种方法

    概述 我们平时看到的居中效果主要分为三大类,水平居中,垂直居中和水平垂直居中,在这里总结以下元素水平居中的方法。 ...

  • 水平居中和垂直居中

    水平居中设置--行内元素 水平居中设置--定宽块级元素 水平居中设置--不定宽块状元素 垂直居中--父元素高度确定...

  • 水平居中和垂直居中

    #水平居中 1.1.已知宽度块元素宽度 : 1.2.文本内容居中: 1.3.通过表格: 1.4.已知宽度,通过设置...

  • 水平居中和垂直居中

    假设有如下html结构 一、实现item在header内水平居中1、item定宽度 2、item不定宽度ps: m...

  • 水平居中和垂直居中

    水平居中 1、行内元素 父元素: 此方法父元素有没有宽度都ok 2、块级元素 需要居中的元素设置宽度 设置css ...

网友评论

      本文标题:水平居中和垂直居中

      本文链接:https://www.haomeiwen.com/subject/aviiottx.html