hcy1996

一道面试题,如下:

第一问:如何居中div?

本来自己的想法是,直接在div上设置margin:auto;发现最后只是水平居中,竖直方向上并没有居中。

方法①  最坑的方法。

知道屏幕的height和width值,通过设置左边和顶部的margin值,达到居中的效果。(Ps:最蠢但是挺实用的方法,哈哈哈)

方法②  position属性

将div设置为position:absolute;以body为父元素进行定位,代码如下:

div{height: 100px;width: 100px;background: red;
        position: absolute;
        top:0;
        left:0;
        bottom:0;
        right: 0;
        margin: auto;
    }
    </style>
</head>
<body>
    <div></div>
</body>

此时,div在屏幕中央显示。(IE8以上兼容

方法③  position+margin负值

div{height: 100px;width: 100px;background: red;
        position: absolute;
        top:50%;
        left:50%; 
        margin: -50px 0 0 -50px; //两个值分别为高度的一半和宽度的一半
    }

此时,也能得到相同的效果。(此方法的神奇之处在于IE6能够兼容

分类:

技术点:

相关文章:

  • 2021-09-19
  • 2022-12-23
  • 2021-12-20
  • 2021-06-13
  • 2021-08-01
  • 2022-01-01
  • 2021-12-09
猜你喜欢
  • 2022-12-23
  • 2021-12-07
  • 2022-02-12
  • 2022-02-26
  • 2021-11-29
  • 2022-12-23
  • 2021-07-04
相关资源
相似解决方案