html - 垂直对齐 : middle and position: absolute

标签 html css

我想用文字覆盖。现在我有:http://jsfiddle.net/9DLyE/9/ 但在这个例子中不工作 vertical-align: middle。我尝试使用 display: table;并显示:表格单元格;但这不适用于绝对位置。 我怎样才能做到 http://jsfiddle.net/9DLyE/9/

<div id="main">
    <div>TITLE</div>
    <div>BODY</div>
    <div>COMMENT</div>
    <div><textarea></textarea></div>
    <div id="overlay">@@@@@@</div>
</div>
<button>overlay</button>

#main {
    width: 200px;
    height: 200px;
    background-color: yellow;
    position:relative
}
#overlay{
    background:rgba(0, 84, 214, 0.5);
    height:100%; width:100%;
    position:absolute;
    top:0; left:0;
    display:none;
    text-align: center;
    vertical-align: middle;
}

最佳答案

代替 vertical-align: middle; 为叠加层提供与主 div 相同的行高:

#overlay {
    line-height: 200px; // the height of #main
}

Demo

关于html - 垂直对齐 : middle and position: absolute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16941613/

相关文章:

php - css 未在 codeigniter 3.1 中加载

java - Thymeleaf 迭代嵌套列表来为高尔夫应用程序创建表 <th> 标题和 <td> 文本

html - 扩展悬停时的背景颜色

javascript - Fancybox 描述框超出范围

javascript - 两个或多个 Canvas 元素与一个视频元素同步

html - Firefox css 打印问题

html - 是否有可能让一个元素透明并透过他的父不透明背景看到

javascript - AngularJS:ng-show 在刷新时闪烁

html - 兄弟 div 在其他兄弟 div 的内部

html - 设计具有不同值属性和显示文本的下拉列表