Vertically center a div inside another div

前端 未结 5 458
梦谈多话
梦谈多话 2020-12-17 18:10

I\'m trying to vertical-align: middle a div inside another div, but for some reason it\'s not working properly. What am I doing wrong?

5条回答
  •  星月不相逢
    2020-12-17 18:54

    The vertical-align property applies only to inline-level and table-cell elements (source). In your code you're working with block-level elements.

    Try this flexbox alternative:

    #wrapper {
        border: 1px solid red;
        width: 500px;
        height: 500px;
        display: flex;               /* establish flex container */
        align-items: center;         /* vertically center flex items */
    }
    
    #block {
        border: 1px solid blue;
        width: 500px;
        height: 250px;
        /* vertical-align: middle; */
    }
    I'm Block

    Learn more about flex alignment here: Methods for Aligning Flex Items

    Browser support: Flexbox is supported by all major browsers, except IE < 10. Some recent browser versions, such as Safari 8 and IE10, require vendor prefixes. For a quick way to add prefixes use Autoprefixer. More details in this answer.

提交回复
热议问题