css布局问题为什么不';具有绝对定位的t-a-div识别封装的td小区

css布局问题为什么不';具有绝对定位的t-a-div识别封装的td小区,css,Css,我有下面的安排。我的问题是,为什么第一个div标记不与单元格顶部对齐,而是向下移动到图像的顶部(ie和firefox等)?绝对定位不起作用,因为div似乎不会将td小区识别为其父小区,而是移动到文档顶部。有办法解决这个问题吗 <td style="width:33%;height:100%; border:solid 1px black; position:relative;"> <div style="vertical-ali

我有下面的安排。我的问题是,为什么第一个div标记不与单元格顶部对齐,而是向下移动到图像的顶部(ie和firefox等)?绝对定位不起作用,因为div似乎不会将td小区识别为其父小区,而是移动到文档顶部。有办法解决这个问题吗

<td style="width:33%;height:100%; border:solid 1px black; position:relative;">

                        <div style="vertical-align:top;">test</div>

                        <div style="text-align:center; vertical-align:middle;padding-bottom:120px; padding-top:30px;">
                            <img src="<%=LastThumb%>" style="vertical-align:middle; border:solid 1px black;" alt="" />
                        </div>
                    </td>

测验
“style=”垂直对齐:中间;边框:实心1px黑色;“alt=”“/>

您认为
位置:绝对;
将导致元素从其他元素的常规流中完全移除,并使div(及其子元素)相对于文档窗口本身而不是其父元素,这是正确的


您还使用了元素,这些元素是块级别的元素。因此,浏览器将始终只在每行中放置一个以换行符分隔的元素。您可以通过向两个div的CSS样式中添加
display:inline block;
来解决此问题。这将导致两个div都被视为内联元素,从而允许您在顶部放置一个“另一个。

Background:是的,问题是在IE中,即使所有父对象的高度都设置为100%,包含的div也不会展开以填充td,而是只对其中包含的对象进行足够的扩展。