【问题标题】:Dashed Table border changing to solid?虚线表格边框变为实心?
【发布时间】:2023-03-31 14:27:01
【问题描述】:

看这个例子:

http://jsfiddle.net/sM3hT/

一个普通的表格样式如下:

table {
 width:100%; 
 border-collapse:collapse;
}
td {
  border:1px dashed black;
  padding:5px;
}
th {
 background:orange;
}

您会注意到边框虚线的间距不均匀,有时甚至显示为实线。这是虚线边界固有的东西吗?

我还尝试将虚线边框应用于 tr 而不是 td,认为它们的长度都相同,因此间距会均匀,但这也无济于事。

这是无法改变的吗?

注意:这是 safari 6,它可能会像在其他浏览器中宣传的那样工作。

我已经附上了它在特定宽度下的截图:

【问题讨论】:

  • 虚线边框在任何浏览器中都无法正常工作...您可以在表格上使用小背景图片 (4x4px) 并将单元格 bg 颜色设为白色,添加 1px 的单元格间距 - 应该做得更好

标签: html css css-tables


【解决方案1】:

恐怕问题是相邻单元格的虚线边框或一般相邻元素所固有的。问题是浏览器分别对每个元素的边框进行破折号,因此考虑到例如,破折号通常不会均匀分布。一行单元格的边框为一行。

这个问题可能最好通过使用例如来避免。取而代之的是浅色的实心边框,例如border: 1px solid gray.

【讨论】:

    【解决方案2】:

    在渲染虚线/虚线边框时,Safari 存在小错误 this 文章可能/可能对阅读没有帮助

    【讨论】:

    • 它也发生在 Chrome 中。 (我猜是因为它也使用了 WebKit)
    【解决方案3】:
    tr { border-bottom:1px dashed black; }
    

    tr { border-bottom:1px dashed black!important; }
    

    【讨论】:

    • 这在一定程度上有所帮助,但在某些宽度下边框仍会变为实心。使用帖子中的小提琴检查您在 Safari 或 Chrome 中的风格 - 它稍微好一些,但并不能完全消除错误。
    【解决方案4】:

    Bugs 消失:

    问题是真正解决 whoit 以最少的方式放大列文本: 你看看这张桌子:

    <table class="mytabletable grid" cellpadding="0" cellspacing="0">
        <thead>
    
            <tr class="header gradient header_padding_0">
                <th class="column_1">
                    <div class="column_inner">Analysis</div>
                </th>
                <th class="column_2">
                    <div class="column_inner">Effect Size</div>
                </th>
                <th class="column_3">
                    <div class="column_inner">Small</div>
                </th>
                <th class="column_4">
                    <div class="column_inner">Medium</div>
                </th>
                <th class="column_5">
                    <div class="column_inner">Large</div>
                </th>
                <th class="column_6">
                    <div class="column_inner">Notes</div>
                </th>
            </tr>
        </thead>
        <tfoot>
            <tr class="border footer_border_top">
                <td colspan="6">
                    <div class="column_inner"></div>
                </td>
            </tr>
            <tr class="footer gradient footer_padding_0 hide_border_top_1 hide_border_bottom_1">
                <td class="column_1">
                    <div class="column_inner">Chi-Square tests</div>
                </td>
                <td class="column_2">
                    <div class="column_inner">Cohen's **w**</div>
                </td>
                <td class="column_3">
                    <div class="column_inner">0.10</div>
                </td>
                <td class="column_4">
                    <div class="column_inner">0.30</div>
                </td>
                <td class="column_5">
                    <div class="column_inner">ampliate</div>
                </td>
                <td class="column_6">
                    <div class="column_inner"></div>
                </td>
            </tr>
            <tr class="border footer_border_bottom">
                <td colspan="6">
                    <div class="column_inner"></div>
                </td>
            </tr>
            <tr class="sticky-false">
                <td colspan="6"></td>
            </tr>
        </tfoot>
        <tbody>
            <tr class="row_1 row_padding_0 first_row row_odd">
                <td class="column_1 first_column">t-test</td>
                <td class="column_2">Cohen's **d**</td>
                <td class="column_3">0.20</td>
                <td class="column_4">anchor</td>
                <td class="column_5">0.80</td>
                <td class="column_6 last_column"></td>
            </tr>
            <tr class="row_2 row_padding_0  row_even">
                <td class="column_1 first_column">F-test</td>
                <td class="column_2">Cohen's **f**</td>
                <td class="column_3">0.10</td>
                <td class="column_4">0.25</td>
                <td class="column_5">0.40</td>
                <td class="column_6 last_column"></td>
            </tr>
            <tr class="row_3 row_padding_0  row_odd">
                <td class="column_1 first_column">F-test</td>
                <td class="column_2">eta^2</td>
                <td class="column_3">0.01</td>
                <td class="column_4">0.06</td>
                <td class="column_5">0.14</td>
                <td class="column_6 last_column">SPSS provides</td>
            </tr>
            <tr class="row_4 row_padding_0  row_even">
                <td class="column_1 first_column">Correlation</td>
                <td class="column_2">Pearson r</td>
                <td class="column_3">0.10</td>
                <td class="column_4">0.30</td>
                <td class="column_5">0.50</td>
                <td class="column_6 last_column">SPSS provides</td>
            </tr>
            <tr class="row_5 row_padding_0  row_odd">
                <td class="column_1 first_column">Correlation Differences</td>
                <td class="column_2">Cohen's **q**</td>
                <td class="column_3">0.10</td>
                <td class="column_4">0.30</td>
                <td class="column_5">ochenta</td>
                <td class="column_6 last_column">Fisher z transformation</td>
            </tr>
            <tr class="row_6 row_padding_0 last_row  hide_border_bottom_1 row_even">
                <td class="column_1 first_column">Proportions (%s)</td>
                <td class="column_2">Cohen's **h**</td>
                <td class="column_3">0.20</td>
                <td class="column_4">0.50</td>
                <td class="column_5">0.80</td>
                <td class="column_6 last_column">Arcsine transformation</td>
            </tr>
        </tbody>
    </table>​
    

    【讨论】:

    • 不确定你改变了什么,但加载这个错误仍然是不同的宽度(调整你的浏览器大小以查看)。不过还是谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-24
    • 1970-01-01
    • 2012-04-04
    • 2012-02-05
    • 2011-09-05
    • 1970-01-01
    相关资源
    最近更新 更多