1
在我的HTML5/javascript应用程序中,我在多层画布上绘制了一个模拟时钟(多层原因是由于JavaScript呈现的动画优化) 。在时钟下方,我想用数字显示时间。这是想实现什么:定位HTML元素,使最大的祖先表现出块元素风格
这是我已经实现
下面是它的标记:
<div id="container">
<div id="analog">
<canvas id="canvBackground"></canvas>
<canvas id="canvDigitsHours"></canvas>
<canvas id="canvDigitsMinutes"></canvas>
<canvas id="canvHandsMinutes"></canvas>
<canvas id="canvHandsHours"></canvas>
</div>
<div id="digital">
16:30
</div>
</div>
#container {
}
#analog {
position: relative;
display: block;
}
#analog > canvas {
position: absolute;
}
#digital {
display: block;
}
我怎样才能让我的父元素<div id="analog">
,当它具有位置为absolute的孩子时表现为块元素样式:绝对?
编辑1:尝试@ CBroe的建议(如果我不想误解你的话?)。使用padding -top: 250px;
两个#analog
的#digital
移动250像素下来:
你不能,绝对定位元素取出正常布局流。但是因为我假设你知道你的canvas的高度(无论是绝对的像素,还是至少在高宽比方面),你可以简单地给容器元素一个相应的填充顶部。 – CBroe
Thnx @Croro但是没有产生预期的结果。 :-( –
然后请创建一个[mcve],以便我们可以检查。 – CBroe