主题:  请看看这个:表格的CSS与嵌套的表格样式冲突,该如何解决?

ida77

职务:普通成员
等级:1
金币:0.0
发贴:113
注册:2003/6/21 22:35:04
#12005/1/7 10:38:32
发生如图问题,我里面又嵌了一表格,但是这个表格继承了以前table的样式,而我不希望他出现这样的效果,该如何解决?试过<div>但是米有成功,请大家帮看看,多谢了~
图片如下:



ida77

职务:普通成员
等级:1
金币:0.0
发贴:113
注册:2003/6/21 22:35:04
#22005/1/7 10:39:30
<TABLE width="100%" class="TC_table2">
<TBODY>
<TR>
<TD align="center" valign="middle" onmouseover="this.style.background='#A9B4C2'" onmouseout="this.style.background=''">
         <div><table width="100" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align="center" valign="middle"><img src="image/Menu_icon_currencytype_2.gif" width="62" height="43" align="middle"></td>
</tr>
<tr>
<td align="center"><p><A href="#">通信服务定制</A></p> </td>
</tr>
</table></div>         </TD>
</TR></TBODY></TABLE>



心魔

职务:普通成员
等级:1
金币:0.0
发贴:26
注册:2004/7/7 7:17:41
#32005/1/7 11:09:00
不太明白你的问题
你的 TC_table2 是怎么定义的?

如果需要在里面的表格上做另外的样式
可以通过 TC_table2 table {...} 来定义该类的子表格样式



ida77

职务:普通成员
等级:1
金币:0.0
发贴:113
注册:2003/6/21 22:35:04
#42005/1/7 13:07:35
.TC_table2
{
    font-size:12px;
    background-color: #E5E8EC;
    border: 1px solid #9FAAB5;
    TableCellSpacing:expression(this.cellSpacing=0);
    }

这里是这样的定义的,我目前想在已经使用了tc_table2的表格里,在建立一个表格(图标外面那部分是两行的table),但是这个表格也受tc_table2的影响,我是想让这个新建立的表格没有任何效果,就是一个不显示出边框的表格~~~~

感谢楼上的回答,但是我还是没明白,如果定义子表格样式?能否仔细说一下,谢谢~



盛装五步

职务:普通成员
等级:3
金币:12.0
发贴:731
注册:2004/12/1 20:15:39
#52005/1/7 13:17:20
应该不是外部表格的样式问题吧,嵌套的表格本来就不会继承的,按照你给出的代码:

[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

编辑历史:[此帖最近一次被 ohnancy 编辑过(编辑时间:2005-01-07 13:23:55)]


ida77

职务:普通成员
等级:1
金币:0.0
发贴:113
注册:2003/6/21 22:35:04
#62005/1/7 13:49:10

相关文件:点这儿打开

就是这个了



ida77

职务:普通成员
等级:1
金币:0.0
发贴:113
注册:2003/6/21 22:35:04
#72005/1/7 15:14:57
我现在明白了
<td style="border:0px"....>
在每个单元格间加这个,就可以了,呵呵~



心魔

职务:普通成员
等级:1
金币:0.0
发贴:26
注册:2004/7/7 7:17:41
#82005/1/10 4:32:27
很不解~
这样的TABLE是不会把样式传递到里面去的
而且你里面那个TABLE表现出的样式并不是TC_table2定义的那些样式
不知道你为什么会这样, 也许有另外的语句在作怪

实在没办法也只能像你那样
不过没必要在每个td里都加style
可以在CSS中给个定义

.TC_table2
{
    font-size:12px;
    background-color: #E5E8EC;
    border: 1px solid #9FAAB5;
    TableCellSpacing:expression(this.cellSpacing=0);
}
/*以下是控制 .TC_table 这个类下所有的TD样式*/
.TC_table2 td
{
    border: 0px;
}



心魔

职务:普通成员
等级:1
金币:0.0
发贴:26
注册:2004/7/7 7:17:41
#92005/1/10 5:06:31
晕, 你上哪儿找的CSS代码

刚刚把你的文件下过来看了一下, 头都大了
整个样式表很长很乱
其中关于 TC_table2 这个类的描写是这样的:
.TC_table2
{
	font-size:12px;
	background-color: #E5E8EC;
	border: 1px solid #9FAAB5;
	TableCellSpacing:expression(this.cellSpacing=0);
}

.TC_table2 tr
    {
	/*onMouseOverLighe:expression(onmouseover=function(){bgColor="#DDE1E6"},onmouseout=function(){bgColor=""});
    alternateColor:expression(bgColor=rowIndex%2==0?'#DDE1E6':'#EbEbEb'); 表格隔行变色的控制*/
	border-spacing: 0px;
}
	
.TC_table2 td
{
	border: 1px solid #9FAAB5;
	border-top: 1px solid #ffffff;
	border-left: 1px solid #ffffff;
	border-right: 1px solid #9FAAB5;
	border-bottom: 1px solid #9FAAB5;
}

其中分别定义了
TC_table2这个类和之下的TR与TD

你这个table刚好被下面这个类控制
.TC_table2 td
{
	border: 1px solid #9FAAB5;
	border-top: 1px solid #ffffff;
	border-left: 1px solid #ffffff;
	border-right: 1px solid #9FAAB5;
	border-bottom: 1px solid #9FAAB5;
}

难怪......
你把这段去掉或者改一下就行了, 不用在每个TD后面控制 padding:0px


对了,给你提个建议,下次有如此问题不妨自己先做试验,新建个文件然后在上面把你需要弄清楚的地方重新做过,避免在实际文件中因为内容太多太杂乱而搞不清楚问题

编辑历史:[此帖最近一次被 ghnstony 编辑过(编辑时间:2005-01-10 21:00:45)]