重写html表格样式

重写html表格样式,html,css,Html,Css,我正在尝试覆盖td样式,如下所示: .valuator .sw-slots table, tr, td { width 100% } 所以我这样做了: td.license-name-td{ width: 100px !important; } 表格始终采用“全局”样式并覆盖,而不是忽略我的样式。即使chrome没有划掉链接,它只是忽略了该部分 td.license-name-td { width: 100px !important } .valuator .sw-

我正在尝试覆盖td样式,如下所示:

.valuator .sw-slots table, tr, td { width 100% }
所以我这样做了:

 td.license-name-td{
  width: 100px !important;
}
表格始终采用“全局”样式并覆盖,而不是忽略我的样式。即使chrome没有划掉链接,它只是忽略了该部分

  td.license-name-td {
    width: 100px !important
  } 

.valuator .sw-slots table, tr, td {
    width: 100%;
 }
(计算css输出)

有没有一种特殊的方法可以在事后覆盖td标签

.evaluator.sw插槽表,tr,td{
宽度:100%;
保证金:0;
填充:0;
边界:0;
字体大小:100%;
字体:继承;
垂直对齐:基线;
边界塌陷:塌陷;
边界间距:0;
文本对齐:右对齐;
颜色:#3C;
}
table.license-table td.license-name-td{
文本对齐:左!重要;
断字:断字;
溢出:隐藏;
宽度:100px!重要;
}
table.license-table td.license-td{
文本对齐:左!重要;
左边距:3倍;
断字:断字;
}

软件
版本
来源
许可证
斑点
0.9.6.19
https://github.com/statianzo/Fleck
麻省理工学院执照
HTML敏捷包
HAP 1.4.6
http://code.google.com/p/heartcode-canvasloader/
Microsoft公共许可证
jQuery
1.10.2002
http://jquery.com
麻省理工学院执照
jQuery旋钮
11.2.8
http://anthonyterrien.com/knob
麻省理工学院执照

问题在于
宽度:100%
也适用于表格。由于行中所有单元格的计数必须达到表的宽度,因此仅限制单元格的宽度是行不通的,还必须对表或行中的其他单元格进行寻址


我不知道您的HTML是什么样子,但是如果单元格是行中唯一的单元格,您可以向表中添加一个类而不是单元格,并将表的宽度设置为
100px
,方法与对单元格所做的相同,您不必将单元格的宽度限制为,这将自动执行。

我已将类名添加到表中,并将类名更改为:

table.license-table td.license-td{
    text-align: left !important;
    margin-left:3px;
    word-break: break-word;
    width: 100px !important;
}

table.license-table td.license-name-td{
  text-align: left !important;
  word-break: break-word;
  overflow: hidden;
  width: 100px !important;
}

这解决了我的问题

首先,在您的示例代码中,我添加了两个封闭的
div
.evaluator
.sw slots
)以便第一个CSS规则应用于表

之后,您需要确保表格单元格的宽度设置为默认值
auto
,除了
td.license name td
的宽度为100px之外

您需要将分隔符
td[colspan=“4”]
td
重置为
width:auto
,然后将
td.license td的
重置为相同

我想这就是你需要的。只要留意其他CSS规则,它们可能在小时样式表中,可能会覆盖这些规则

.evaluator.sw插槽表,tr,td{
宽度:100%;
保证金:0;
填充:0;
边界:0;
字体大小:100%;
字体:继承;
垂直对齐:基线;
边界塌陷:塌陷;
边界间距:0;
文本对齐:右对齐;
颜色:#3C;
}
td[colspan=“4”]{
宽度:自动;
}
td.license-name-td{
文本对齐:左对齐;
断字:断字;
溢出:隐藏;
宽度:100px;
背景颜色:浅蓝色;
}
td.license-td{
文本对齐:左对齐;
左边距:3倍;
断字:断字;
宽度:自动;
}

软件
版本
来源
许可证
斑点
0.9.6.19
https://github.com/statianzo/Fleck
麻省理工学院执照
HTML敏捷包
HAP 1.4.6
http://code.google.com/p/heartcode-canvasloader/
微软公共许可
jQuery
1.10.2002
http://jquery.com
麻省理工学院执照
jQuery旋钮
11.2.8
http://anthonyterrien.com/knob
麻省理工学院执照

您能提供一个测试用例吗?请提供更多详细信息。此信息太有限,至少相关的HTML请提供一个足够完整的测试用例,以重现问题本身中的问题。Stackoverflow编辑器中有一个snippet按钮,允许您提供一个实时示例。没有必要将人们转移到第三方网站,如JSFIDLE。我看不出代码有问题,我假设它存在于HTML中。对不起,我将提供一个代码片段!假设一行中只有一个单元格。如果一行中有多个单元格,这应该不是问题。
.license name td
将为100px,其他的将占用剩余空间。如果其他设置为100%,则不会。您的表已经有一个类名
.t3lsg
,因此不需要定义其他类名。还有,
!重要信息
不需要。我认为表规则的选择器造成了一些混乱,您通过向表中添加另一个类名解决了这一问题。你现在应该准备好了。如果我不需要.evaluator.sw slots表tr,td{/*style*/}类怎么办?我只是不想将该类应用于我的表?带有选择器
.evaluator.sw slots table
的CSS规则设置表布局按预期工作所需的属性。您可以通过多种方式实现这一点,包括定义一个新类,如
.license table
。无论您如何处理这个问题,都要尽量保持CSS样式表的简洁性和组织性,以便于将来的维护。