css - 无法覆盖 CSS 填充

标签 css google-chrome

我有以下应用于表格的 CSS:

.myTable
{
  width: 99%;
  border-collapse:collapse;
  word-wrap:break-word;
  border:1px solid #28282C;
  background-color: #F7F6F3;
}

.myTable td
{    
  padding: 16px 4px 0px 4px;
  text-align:left;
  vertical-align:top;    
}

因为我不想将填充应用到表格中的表单元素,所以我还有这个 CSS:

.myTable td input
{    
  padding:0px 0px 0px 0px !important;     
}

但是,这是行不通的。填充物顽固地保持不变,除非我放入更大的填充物。例如,如果我这样做:

.myTable td input
{    
  padding:50px 50px 50px 50px !important;     
}

然后表单元素被更新的、巨大的填充正确覆盖。我在这里错过了什么?如何使用 CSS 覆盖/取消子元素上的填充?

编辑:我在深入研究呈现的 HTML 后发现了它。输入元素很好,原因是 ASP.NET 在其自己的 TD 中呈现复选框列表中的每个复选框,它从样式表接收填充并使输入看起来像是被填充了。谢谢大家

最佳答案

这与您输入的完全一样。您已将填充应用于 TD。这会将填充应用于每个 TD,而不管其中包含什么。

您的第二种输入样式是除了在 TD 上设置的填充。所以它没有覆盖任何东西。

您可以尝试对 INPUT 应用负边距以抵消父 TD 中的填充。不确定是否所有浏览器都会喜欢。

或者,为具有输入的 TD 指定它们自己的类:

<td class="withInput">

然后你可以在你的 CSS 中使用这个选择器:

td.withInput {padding: 0px;}

关于css - 无法覆盖 CSS 填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7070764/

相关文章:

javascript - 修改 jParallax 滚动

python - 更改字体样式,同时保留用于绘图仪表板的外部样式表

Python + BeautifulSoup : How to get wrapper out of HTML based on text?

google-chrome - FFMPEG 慢速 VP8 编码

http - Chrome 不加载页面,safari 可以

javascript - 按下后退按钮时如何保留可滚动区域的滚动位置?

google-chrome - 如何添加 chrome 二进制文件以运行,例如在 CI 服务器上对 headless chrome 进行 Karma 测试

css - 防止 CSS only 模态窗口跳转到页面顶部

javascript - 如何在被透明 div 覆盖时突出显示 HTML 文本?

laravel - Firefox 强制开发域使用 SSL 和 Chrome