css - 在 FireFox 中使用显示表格单元格和 float 元素时宽度错误

标签 css firefox css-tables

似乎 FireFox (17.0.1) 在使用 table-cell 和 float 元素的显示时错误地计算了宽度,其中它设置了父级宽度并且不包括父级宽度中的 float 元素的宽度.这似乎适用于 Chrome、IE8、IE9 和 IE10。

   <div style="position:absolute">
    <div style="position:relative">
        <div class="option">
            <div>
                <div class="right">right text</div>
                <div class="cell">content item 1</div>
            </div>
        </div>
        <div class="option">
             <div>
                 <div class="right">right</div>
                 <div class="cell">content</div>
             </div>
        </div>
    </div>
</div>
<style>
    .right {float:right;}
    .cell
    {
        display:table-cell;
        height:30px;
        vertical-align:middle;
        border:1px solid green
    }
</style>​

如果可能,我正在寻找仅 CSS 的修复程序,因为它已经存在。一些 HTML 可能没有意义,但我删除了 90% 以使示例更清晰。

我注意到一些表格单元格错误,其中某些父元素需要显示:表格、显示:表格行……但我找不到有效的组合。

此外,我正在努力避免对宽度进行硬编码。

最佳答案

通过删除 float: right; 让您的生活更轻松 并在容器 div 上添加 display: table-row;:

http://jsfiddle.net/Riskbreaker/u9RU4/1/

我在 FF-Chrome-IE9 和 IE8- 以及 Safari 中为您测试了这个。 ......除非你需要 float ....

关于css - 在 FireFox 中使用显示表格单元格和 float 元素时宽度错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14126911/

相关文章:

html - page-wrapping div 的优点是什么?我是否应该使用它?

html - 在 WP8 Cordova 应用程序中禁用内容反弹 - disallowoverscroll 不起作用

java - 如何在 3 种不同的浏览器中在同一台电脑上并行运行 selenium html 套件?

html - 在 colgroup 中使用文本对齐中心

html - 导航显示 :table cell where first and last child is a different width

css - 无法让 List 内联显示?

PHP 使用 explode() 读取文本文件以获取文本的特定部分

html - li 和隐藏 div 上的 firefox 中的 css 大纲错误

javascript - 如何在浏览器加载时自动启动 iMacros Javascript

具有灵活高度/宽度的 HTML DIV 表