如果元素不是表,则添加填充

时间:2011-11-05 18:16:10

标签: element css-tables

这是我的CSS剪辑:

html, body, * {
    padding:0; 
    margin:0;
}

我需要对其进行修改,因此如果任何表格具有cellpadding="4"属性,则不会向其添加padding:0;,而是使用此属性代替:cellpadding="4"

有可能吗?

2 个答案:

答案 0 :(得分:1)

所有现代浏览器都支持:not选择器。用法:

*:not([cellpadding]) {
    padding: 0;
    margin: 0;
}

小提琴:http://jsfiddle.net/rWVEu/

答案 1 :(得分:0)

我相信你必须使用填充:inherit;另外,在你的html,body,* line之后声明它。

html, body, * {
    padding:0; 
    margin:0;
}
table[cellpadding="4"] {
    padding:inherit;    
}

更新

如果您的单元格受* css代码影响,则可以包含专门用于td元素的行:

table[cellpadding="4"] td {
    padding:inherit;
}