2014-09-17 3 views
0

Можно создать что-то подобное только через стиль таблицы css? я могу создавать различные цвета для четных и нечетных строк, но я хотел бы, чтобы создать это (только цвета): exampleРазный цвет для строк в таблице

+0

Итак, что логика на этой раскраске? – LcSalazar

+0

Похоже, что это связано с первым символом первого столбца. Я бы сказал, просто создайте класс CSS для каждого из них с соответствующим цветом фона и пометьте строку этим классом проще всего. –

+0

Вы можете использовать nth-child для таргетинга на каждый tr, а затем на последний дочерний элемент, который будет нацелен на последние элементы. Если вам не нужна семантическая разметка, вы можете просто добавить класс к этим красным tds. –

ответ

1

Если предположить, что число строк постоянно, вы можете использовать nth-of-type, nth-last-of-type или nth-child селекторов плюс формулы, чтобы сделать раскраску. Этот пример также требует играть со спецификой селектора, размещая наборы правил в определенном порядке: http://jsfiddle.net/se4Lwt1y/.

HTML:

<table> 
    <tr><td>Row 1</td></tr> 
    <tr><td>Row 2</td></tr> 
    <tr><td>Row 3</td></tr> 
    <tr><td>Row 4</td></tr> 
    <tr><td>Row 5</td></tr> 
    <tr><td>Row 6</td></tr> 
    <tr><td>Row 7</td></tr> 
    <tr><td>Row 8</td></tr> 
    <tr><td>Row 9</td></tr> 
    <tr><td>Row 10</td></tr> 
    <tr><td>Row 11</td></tr> 
    <tr><td>Row 12</td></tr> 
    <tr><td>Row 13</td></tr> 
    <tr><td>Row 14</td></tr> 
    <tr><td>Row 15</td></tr> 
    <tr><td>Row 16</td></tr> 
    <tr><td>Row 17</td></tr> 
    <tr><td>Row 18</td></tr> 
    <tr><td>Row 19</td></tr> 
    <tr><td>Row 20</td></tr> 
    <tr><td>Row 21</td></tr> 
</table> 

CSS:

table { 
    width: 100%; 
} 

table tr:nth-of-type(-n + 11) { 
    background-color: hsla(60, 70%, 70%, 1); 
} 

table tr:nth-of-type(-n + 3) { 
    background-color: hsla(0, 0%, 70%, 1); 
} 

table tr:nth-last-of-type(-n + 11) { 
    background-color: hsla(200, 50%, 70%, 1); 
} 

table tr:nth-last-of-type(-n + 4) { 
    background-color: hsla(200, 50%, 60%, 1); 
} 
+0

Спасибо, похоже, что это может сработать. Я попробую скоро и опубликую результат – Sk1X1

Смежные вопросы