Html td的宽度属性未覆盖css宽度属性
我对此进行了大量的研究,但仍然无法理解这种行为的原因。我有一个指定了width属性的td元素,并且在css类中指定了width。但是css类中的宽度是反射的,元素的width属性不具有更高的优先级吗 示例代码:Html td的宽度属性未覆盖css宽度属性,html,css,width,Html,Css,Width,我对此进行了大量的研究,但仍然无法理解这种行为的原因。我有一个指定了width属性的td元素,并且在css类中指定了width。但是css类中的宽度是反射的,元素的width属性不具有更高的优先级吗 示例代码: <table class="sample"> <tr> <td width="70%" class="cell">First cell</td> <td class="cell">Second cell<
<table class="sample">
<tr>
<td width="70%" class="cell">First cell</td>
<td class="cell">Second cell</td>
</tr>
</table>
我知道width属性已被弃用,不建议使用,我正在尝试理解该行为,因为我必须修复一个类似的问题,我有许多页面使用style td.cell,但我需要在一个页面中覆盖它,我可以选择一种方式的style属性,或者定义另一个样式类 当您写入第一个单元格时,浏览器将解析
此行将生成一列,其属性为宽度。但是当你写的像
<td style="width:70%" class="cell">First cell</td>
只需在标记中写入宽度即可将其定义为属性。所以你的Css覆盖了这个
见此:-
这是您的问题的答案:-来自
6.4.4非CSS表示性提示的优先级
UA可以选择尊重HTML源中的表示属性
文件。如果是,这些属性将转换为相应的
特异性等于0的CSS规则,并被视为
插入到作者样式表的开头。因此,它们可能是
被后续样式表规则覆盖。在过渡阶段,,
这一政策将使风格属性更容易共存
使用样式表
所以CSS样式总是比HTML中的表示属性排名靠前。是的,这是可行的,但我需要的是问题中提到的行为的原因。如果有人能指出为什么它是正确的/错误的将是有益的。我已经提到了一个非常好的链接。。。通读答案,希望这能帮助你理解其中的区别。此外,我还将更新我的回答中的一些要点。嗨,普拉纳夫,非常感谢你提供的资源,它帮助我获得了良好的理解。我相信我会赢的。
<td style="width:70%" class="cell">First cell</td>
<table class="sample">
<tr>
<td style="width:70%" class="cell">First cell</td>
<td class="cell">Second cell</td>
</tr>
</table>
<table width="100%" class="sample">
<tr>
<td width="70%" class="cell">First cell</td>
<td width="30%" class="cell">Second cell</td>
</tr>
</table>
table.sample {
border: 1px solid red;
}
td.cell {
border: 1px solid black;
}