首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在cellpadding=中使用cellspacing=2可以吗?

在cellpadding=中使用cellspacing=2可以吗?
EN

Stack Overflow用户
提问于 2010-03-10 05:38:32
回答 4查看 11.5K关注 0票数 10

cellpadding="2" cellspacing="2"中使用<table>可以吗?或者这些不是W3C推荐的,也不符合网络标准?

CSS中有哪些替代方案?

更新:使用<td align="right" valign="top">也可以吗?

我的问题是内容和表示的分离以及W3C的建议。

更新:根据这张图表<table>中只允许alignbgcolor在严格的版本中。那么允许<table>的其他属性可以吗?

alt文本http://shup.com/Shup/293811/11021055643-My-Desktop.png

EN

回答 4

Stack Overflow用户

发布于 2010-03-10 17:23:03

不,这些属性并不是正式反对的,但它们通常是不受欢迎的,因为您应该使用CSS来表示。

对于cellpadding,您可以轻松地在CSS中用padding替换它:

代码语言:javascript
复制
table.classname td {
  padding: 4px;
}

对于cellspacing,首先决定它是否真的有必要。如果在表格单元格上没有任何边框,或者不希望每个单元格的边框之间有间隔,那么它就不是。(就个人而言,我认为单元格间距在设计上看起来很糟糕,但在某些情况下可能有用。)

很高兴这样做:

代码语言:javascript
复制
table {
  border-collapse: collapse;
}

然后,每个表单元格与其邻居共享边框,这意味着您可以添加,例如,1px顶部和底部边框,您只需得到分隔每一行的1px。

然而,要分隔边框,您可以使用这个CSS,尽管它可能在IE6中不起作用。

代码语言:javascript
复制
table.data td {
  border-collapse: separate;
  border-spacing: 4px;
}
票数 10
EN

Stack Overflow用户

发布于 2010-03-10 06:25:59

虽然技术上很好,但强烈建议不要这样做。

想象一下,如果您的站点有多个跨多个页面的表,并且出于某种原因想要更改填充或间隔。好吧,你得翻阅你的整个网站并做些改变。

或者,您可以使用CSS并通过在一个位置更改一行代码来更改整个站点。这样不仅效率更高,而且更容易,帮助您避免错误,并保持您的一致性。

代码语言:javascript
复制
<style type="text/css">
    table td { padding:10px; margin:10px; }
</style>

如果您想使用带有填充和边距的某些表,而不使用其他表,则可以通过添加“”来在CSS中创建类。在你选择的名字之前:

代码语言:javascript
复制
<style type="text/css">
    .myTable td { padding:10px; margin:10px; }
</style>
<table class="myTable> etc...

注意,类名区分大小写。还有许多其他的属性,你可以享受像边框,背景色等.

简而言之,虽然单元格间距和单元格填充属性不受欢迎,但更好的方法是在站点上使用CSS以方便和一致。

票数 8
EN

Stack Overflow用户

发布于 2010-03-10 05:45:00

代码语言:javascript
复制
<style type="text/css">
table.padded-table td { 
    padding:10px; 
    }
</style>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2414773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档