Как обратиться к конкретным элементам списка?

Не могу понять, как сделать исключение для empty, использовать nth-child(even)?

В списке c классом elements, все li, кроме того что с классом empty должны иметь цвет "yellowgreen". А те, у которых есть аттрибут hasDropdown должны иметь отступ слева 30px

Правильно понимаю, как для hasDropdown должно быть ?

.elements li:first-child {
  padding-left: 30px;
}

.elements li:last-child {
  padding-left: 30px;
}
<ul class="elements">
  <li class="item" hasDropdown>1</li>
  <li class="item">2</li>
  <li class="item empty">N/A</li>
  <li class="item">3</li>
  <li class="item" hasDropdown>4</li>
</ul>


Ответы (1 шт):

Автор решения: BlackStar1991

.elements li[hasDropdown] {
  padding-left: 30px;
}

.elements li:not(.empty){
color:yellowgreen;
}
<ul class="elements">
  <li class="item" hasDropdown>1</li>
  <li class="item">2</li>
  <li class="item empty">N/A</li>
  <li class="item">3</li>
  <li class="item" hasDropdown>4</li>
</ul>

Как то так. Хотя атрибут hasDropdown не валиден

→ Ссылка