当前位置:  开发笔记 > 前端 > 正文

为什么cellspacing和cellpadding不是CSS样式

如何解决《为什么cellspacing和cellpadding不是CSS样式》经验,为你挑选了3个好方法。

我不知道为什么这么困扰我,但是当我创建网站时,我总是尝试用CSS做我所有的造型.但是,当我使用表时,我总是要记住要做的一件事是添加cellspacing ="0"和cellpadding ="0"

为什么没有CSS属性来覆盖这些过时的HTML 4属性?



1> mat..:

Cellspacing:

table { border-collapse: collapse; }

至于cellpadding,你可以做到

table tr td, table tr th { padding: 0; }


请注意,`border-collapse:collapse`会产生与`cellspacing ="0"`完全不同的视觉效果.这两种方法实际上并不是以任何有意义或有用的方式等同或可互换的.

2> 小智..:

垫子已经回答了,但仅仅是为了完整性:

paddingcellpadding

border-spacingcellspacing

border-collapse →没有HTML等价物

还值得记住的是,您可以为CSS设置单独的水平和垂直值,例如border-spacing: 0 1px.



3> Simon_Weaver..:

Eric Myer的重置样式表包含以下表的"重置"样式:

/* tables still need 'cellspacing="0"' in the markup */
table {
    border-collapse: collapse;
    border-spacing: 0;
}

另外TD,TR被重置:

thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

我提到这个的原因是他有一个评论'表仍然需要cellpadding = 0'.我认为他把这个放在这里是有原因的 - 可能需要一些旧的浏览器.从这一事实来看,这是他所包含的极少数评论之一,我猜它很重要,并且有充分的理由.

基于此评论 - 仅此评论! - 我继续在标记中使用cellspacing ="0",除非有人告诉我(下面)为什么我不需要.然而,在任何现代浏览器中可能都没有必要支持这些日子.

推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有