html - 带有 `position: absolute` 的内部按钮将放置在 table 外面

标签 html css html-table position

HTML:

<br/><br/><br/><br/><br/>

<table>
<tr>
    <td class="container">
        <button class="del">delete</button>
    </td>
</tr>
</table>

<br/><br/><br/><br/><br/>

<div class="container">
<button class="del">delete</button>
</div>​

CSS:

.container {
    position: relative;
    border: 1px solid red;
    height: 50px;
    width: 200px;
}

.del {
    position: absolute;
    top: 3px;
    right: 3px;
}​

为什么div里面的按钮会放在div的右上角,而td里面的按钮会放在表格外面?

如何解决?

查看事件演示:http://jsfiddle.net/Freewind/d6Tug/

最佳答案

我觉得跟td的显示风格有关,就是table-cell。如果将其设置为 display:block,它将正常工作。

只需将 display:block 添加到您的 .container 样式即可。

正如 freewind 指出的那样,如果您的浏览器支持 td,最好使用 inline-block,因为 td 通常显示在一行中。

关于html - 带有 `position: absolute` 的内部按钮将放置在 table 外面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10059841/

相关文章:

javascript - 单击输入后删除输入错误消息

css - Bootstrap 网格相对于包含 div 而不是窗口

css - CSS 标签限定(例如 h1.some-class)有什么问题?

html - 带有图像的 Flexbox 列

css - 应用 CSS 格式以仅在 TD 级别覆盖它

javascript - JavaScript 中的 parseInt 函数

html - td 悬停真的卡在这里

jquery - 为什么我的水平滚动网站会丢失导航栏?

javascript - 如何连接不同表中的行

jQuery for html table 根据其他单元格值更改单元格内容