html - HTML 表格的条件格式

标签 html css

我有一个 HTML 表格

<table border="1">
  <tr bgcolor="#6699FF">
    <th>Name</th>
    <th>DOJ</th>
    <th>BAU</th>
  </tr>
  <tr>
    <td>XXX</td>
    <<td>2015-06-03</td>
      <td>1</td>
  </tr>
  <tr>
    <td>YYY</td>
    <<td>2015-05-03</td>
      <td>2</td>
  </tr>
  <tr>
    <td>ZZZ</td>
    <<td>2015-04-03</td>
      <td>3</td>
  </tr>
</table>

` 我的要求是,如果 BAU(第 3 列)为 1,则相应的 DOJ(第 2 列)单元格将为绿色,依此类推。我在 Linux 中生成此报告。有没有办法只使用 CSS 和 HTML 来做到这一点。如果不是另一种方式是什么?提前致谢!

最佳答案

只有一种方法。

您可以使用data-* 属性。

像这样:

<!-- ... -->

<tr bgcolor="#6699FF">
    <th>Name</th>
    <th>DOJ</th>
    <th>BAU</th>
</tr>
<tr data-bau="1">
    <td>XXX</td>
    <td>2015-06-03</td>
    <td>1</td>
</tr>

<!-- ... -->

然后,在你的 CSS 上:

table tr[data-bau="1"] td:first-child + td {background:lightgreen;}
table tr[data-bau="2"] td:first-child + td {background:lightblue;}
table tr[data-bau="3"] td:first-child + td {background:lightyellow;}
/* ... */

例子:

table tr[data-bau="1"] td:first-child + td {background:lightgreen;}
table tr[data-bau="2"] td:first-child + td {background:lightblue;}
table tr[data-bau="3"] td:first-child + td {background:lightyellow;}
<table border="1">
	<tr bgcolor="#6699FF">
		<th>Name</th>
		<th>DOJ</th>
		<th>BAU</th>
	</tr>
	<tr data-bau="1">
		<td>XXX</td>
		<td>2015-06-03</td>
		<td>1</td>
	</tr>
	<tr data-bau="2">
		<td>YYY</td>
		<td>2015-05-03</td>
		<td>2</td>
	</tr>
	<tr data-bau="3">
		<td>ZZZ</td>
		<td>2015-04-03</td>
		<td>3</td>
	</tr>
</table>


如果这不是一个选项,您可以在生成 HTML 时使用 style 属性:

<table border="1">
	<tr bgcolor="#6699FF">
		<th>Name</th>
		<th>DOJ</th>
		<th>BAU</th>
	</tr>
	<tr>
		<td>XXX</td>
		<td style="background: lightgreen;">2015-06-03</td>
		<td>1</td>
	</tr>
	<tr>
		<td>YYY</td>
		<td style="background: lightblue;">2015-05-03</td>
		<td>2</td>
	</tr>
	<tr>
		<td>ZZZ</td>
		<td style="background: lightyellow;">2015-04-03</td>
		<td>3</td>
	</tr>
</table>

关于html - HTML 表格的条件格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30668487/

相关文章:

javascript - 如何在不改变该元素 sibling 位置的情况下显示子 div?

java - 如何计算多列(colspan)HTML 表格的宽度?

html - 隐藏伪元素的溢出

html - CSS 高度 :100% not working on Table inside Flexbox Child

html - Bootstrap - 不等宽度的表单元素占据完整的 .row

python - 附加到 Django 表单验证错误?

html - 图像周围奇怪的填充问题

html - 如何拉伸(stretch)导航使其占据整个 div

html - @media 打印 div : How to solve overlapping page text on header?

javascript - Django 问题 : manage. py runserver 错误信息