如何使用CSS或jQuery设置不同的表宽度?
我们的用户正在使用一个工具来创建HTML内容,我不能控制它生成的HTML,但我可以控制它背后的CSS,我还设法插入了jQuery 我们的设计准则是,无论何时创建具有两列的表,第一列的宽度应为300px,第二列的宽度应为380px 当他们创建一个表格时,他们可以从工具中选择设置每个表格单元格的宽度,但是为了给他们保存这个,我想在HTML中自动应用这个选项 有没有一种方法可以使用CSS规则设置td1和td2的表格宽度?我知道在CSS中,我可以做如下事情:如何使用CSS或jQuery设置不同的表宽度?,jquery,css,Jquery,Css,我们的用户正在使用一个工具来创建HTML内容,我不能控制它生成的HTML,但我可以控制它背后的CSS,我还设法插入了jQuery 我们的设计准则是,无论何时创建具有两列的表,第一列的宽度应为300px,第二列的宽度应为380px 当他们创建一个表格时,他们可以从工具中选择设置每个表格单元格的宽度,但是为了给他们保存这个,我想在HTML中自动应用这个选项 有没有一种方法可以使用CSS规则设置td1和td2的表格宽度?我知道在CSS中,我可以做如下事情: td { width: 300px; }
td
{
width: 300px;
}
但这将适用于所有TDs
如果使用CSS无法做到这一点,我还插入了jquery,如果无法使用CSS,我很乐意使用它
编辑:
我需要这个解决方案来处理IE8及以上的旧浏览器,但我们的大多数用户仍然使用它。使用
也读
更新
您可以使用支持IE css3选择器的JS
或
由于IE8支持第一个子项
,您可以在IE8
/*table tr td:nth-child(2)*/
table tr td:first-child+ td { width: 300px; }/*Works for IE8*/
使用
也读
更新
您可以使用支持IE css3选择器的JS
或
由于IE8支持第一个子项
,您可以在IE8
/*table tr td:nth-child(2)*/
table tr td:first-child+ td { width: 300px; }/*Works for IE8*/
您可以在CSS和JQuery中实现这一点 在CSS中,您只需使用伪类选择器
您可以在CSS和JQuery中实现这一点 在CSS中,您只需使用伪类选择器
ie8不支持第n个子项来解决它,您可以这样做
table tr td:first-child + td +td { //gets 3rd td
width:300px;
}
ie8不支持第n个子项来解决它。您可以这样做
table tr td:first-child + td +td { //gets 3rd td
width:300px;
}
这是否适用于IE8?第二个孩子怎么办?第n个孩子(n)似乎不与IE8一起工作,但第一个孩子是CSS2,与IE8一起工作。第n个孩子是CSS3,而不是。看,这对IE8有用吗?第二个孩子怎么办?第n个孩子(n)似乎不与IE8一起工作,但第一个孩子是CSS2,与IE8一起工作。第n个孩子是CSS3,而不是。看,谢谢Anton,但是它似乎只适用于页面上的第一个表,而我只有很少的表。知道为什么吗?只有第一个表,奇怪的似乎在这里与多个表一起工作@Joly可能是工具生成html的方式,我会继续挖掘它创建的代码,thanksI注意到表是在元素下创建的,这会有什么不同吗?@Joly不,它不应该只是测试出来,谢谢Anton,但是它似乎只应用于页面上的第一个表,我得到的很少。知道为什么吗?只有第一个表,奇怪的似乎在这里与多个表一起工作@Joly可能是工具生成html的方式,我会继续挖掘它创建的代码,thanksI注意到这些表是在元素下创建的,这会有什么不同吗?@Joly不,它不应该只是测试它