YaoRaoLov 2008-12-04 08:45 采纳率: 50%
浏览 531
已采纳

在 CSS 中设置 cellpadding 和 cellspacing?

In an HTML table, the cellpadding and cellspacing can be set like this:

<table cellspacing="1" cellpadding="1">

How can the same be accomplished using CSS?

转载于:https://stackoverflow.com/questions/339923/set-cellpadding-and-cellspacing-in-css

  • 写回答

25条回答 默认 最新

  • 谁还没个明天 2010-07-09 02:34
    关注

    Basics

    For controlling "cellpadding" in CSS, you can simply use padding on table cells. E.g. for 10px of "cellpadding":

    td { 
        padding: 10px;
    }
    

    For "cellspacing", you can apply the border-spacing CSS property to your table. E.g. for 10px of "cellspacing":

    table { 
        border-spacing: 10px;
        border-collapse: separate;
    }
    

    This property will even allow separate horizontal and vertical spacing, something you couldn't do with old-school "cellspacing".

    Issues in IE <= 7

    This will work in almost all popular browsers except for Internet Explorer up through Internet Explorer 7, where you're almost out of luck. I say "almost" because these browsers still support the border-collapse property, which merges the borders of adjoining table cells. If you're trying to eliminate cellspacing (that is, cellspacing="0") then border-collapse:collapse should have the same effect: no space between table cells. This support is buggy, though, as it does not override an existing cellspacing HTML attribute on the table element.

    In short: for non-Internet Explorer 5-7 browsers, border-spacing handles you. For Internet Explorer, if your situation is just right (you want 0 cellspacing and your table doesn't have it defined already), you can use border-collapse:collapse.

    table { 
        border-spacing: 0;
        border-collapse: collapse;
    }
    

    Note: For a great overview of CSS properties that one can apply to tables and for which browsers, see this fantastic Quirksmode page.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(24条)

报告相同问题?