Как настроить таргетинг на элементы, содержащие только пробел () с помощью CSS? - PullRequest
0 голосов
/ 03 апреля 2019

У меня есть таблица, и есть несколько столбцов со следующим кодом:

<td class="t-Report-cell" align="right" headers="KORTING_PERC">&nbsp;</td>

Я хотел бы иметь возможность нацеливаться на TD, которые имеют заголовки = "KORTING_PERC" и содержат толькоhtml-вариант пробела.

Я пробовал следующее:

td[headers="KORTING_PERC"]:contains("&nbsp;")
td[headers="KORTING_PERC"]:contains(" ")
td[headers="KORTING_PERC"]:not(:empty)

Используя следующее с красным фоном:

[headers="KORTING_PERC"]:not(:contains(" ")){
  background: red;
}

Результат:

Result

Ответы [ 2 ]

0 голосов
/ 03 апреля 2019

div[headers='KORTING_PERC'][data-value='23'] {
   background-color: red;
}
     <div class="t-Report-cell" align="right" data-value="23" headers="KORTING_PERC">23</div>
     <div class="t-Report-cell" align="right" data-value="" headers="KORTING_PERC">23</div>

Вы не можете выбрать innerText, используя CSS, вы можете использовать jQuery для выбора по тексту или вы можете добавить другой атрибут к тегу html, который включает в себязначение элемента и выберите его в CSS.

0 голосов
/ 03 апреля 2019

Попробуйте это

$('td[headers="KORTING_PERC"]').each(function(){
   if($(this).text() == '&nbsp;' || $(this).text() == ''){
      $(this).css('background','red');
   }
});
...