html - 将div与固定div垂直对齐作为父级?

标签 html css vertical-alignment absolute

我有一个相对 div 位于固定位置 div 的顶部,我想垂直对齐第一个 div。有没有办法做到这一点?这是我当前的标记:

<div class="overlay">
    <div id="dialogInvoice">
        content
    </div>
</div>

CSS:

.overlay {
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0,0.5);
    position: fixed;
    z-index: 10;
}

#dialogInvoice {
    width: 390px;
    height: 722px;
    margin: 0 auto;
    padding-top: 28px;
    border-radius: 4px;
    background: #ffffff;
    position: relative;
}

对此有什么建议吗?我确实尝试过行高方法,但这显然只在使用纯文本时有效。

最佳答案

如果您的元素没有固定的宽度或高度,那么您不能在不使用 javascript 计算值的情况下使用其他解决方案。

这是一个替代方案。

#dialogInvoice {
    width: 390px;
    height: 722px;
    padding-top: 28px;
    border-radius: 4px;
    background: #ffffff;
    position: absolute;
    left:50%;
    top:50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

关于html - 将div与固定div垂直对齐作为父级?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23625688/

相关文章:

CSS 下拉菜单无法正确堆叠

css - 在 div 中垂直居中列表

html - Google Rich Snippets 为一位作者工作,但不为另一位作者工作

javascript - 如何在 JavaScript 中自发获取多个输入

html - pos :relative & overflow-y:scroll 内的固定位置 div

javascript - 更改背景颜色 onclick HTML5

css - React Native - 为什么填充不起作用?

html - 向上移动图标并与我的主标题内联

html - CSS : how to center a input inside a div

html - 在 table-cell 元素中使用 float 属性将先前的内容向下滑动