Подходит .menu a:last-child:not([target="_blank"]). В приведённой разметке совпадений нет: единственная последняя ссылка имеет запрещённый target.
Как сформировать CSS‑селектор для выбора нужных ссылок
Подходит .menu a:last-child:not([target="_blank"]). В приведённой разметке совпадений нет: единственная последняя ссылка имеет запрещённый target.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Дана HTML‑разметка с разными элементами. Необходимо построить CSS‑селектор, который выбирает все ссылки, отвечающие следующим критериям: • находятся внутри элемента с классом .menu; • являются последними дочерними узлами; • не содержат атрибут target="_blank".
<div class="menu">
<a href="home.html">Home</a>
<a href="contact.html">Contact</a>
<a href="profile.html" target="_blank">
Profile
</a>
</div>
Ответ
Подходит .menu a:last-child:not([target="_blank"]). В приведённой разметке совпадений нет: единственная последняя ссылка имеет запрещённый target.
.menu a:last-child:not([target="_blank"]) {
color: rebeccapurple;
}
Пробел означает любого потомка .menu; если нужны только непосредственные дети, замените его на >. :last-child проверяет положение среди элементов-соседей: текстовые узлы и пробелы не мешают. Это не «последняя ссылка, подходящая после фильтра»: Contact не становится последним ребёнком из-за исключения Profile. :last-of-type решал бы другую задачу — последнего элемента типа a.