Вы можете использовать jQuery-селектор :nth-child()
для чередования строк таблицы, чтобы создать полосатую таблицу «зебра». Селектор :nth-child(N)
в качестве аргумента принимает индекс дочернего элемента (начиная с 1
), значение четный (even) или нечетный (odd) или выражение (например :nth-child(2)
, :nth-child(even)
, :nth-child(2n)
). Давайте посмотрим на пример:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Zebra Striped Table with jQuery</title>
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script>
$(document).ready(function(){
// Применяем альтернативный класс к чередующимся строкам таблицы
$("table tbody tr:nth-child(2n)").addClass("alt");
});
</script>
<style>
table{
margin: 30px;
border-collapse: collapse;
}
table tr{
border-bottom: 1px solid #666;
}
table th, table td{
padding: 10px;
}
/* Класс подсветки */
.alt{
background: #cdcdcd;
}
</style>
</head>
<body>
<table>
<thead>
<tr>
<th>Row</th>
<th>First Name</th>
<th>Last Name</th>
<th>Email</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>John</td>
<td>Carter</td>
<td>johncarter@mail.com</td>
</tr>
<tr>
<td>2</td>
<td>Peter</td>
<td>Parker</td>
<td>peterparker@mail.com</td>
</tr>
<tr>
<td>3</td>
<td>John</td>
<td>Rambo</td>
<td>johnrambo@mail.com</td>
</tr>
<tr>
<td>4</td>
<td>Harry</td>
<td>Potter</td>
<td>harrypotter@mail.com</td>
</tr>
<tr>
<td>5</td>
<td>Percy</td>
<td>Jackson</td>
<td>percyjackson@mail.com</td>
</tr>
</tbody>
</table>
</body>
</html>