Välj endast listobjekt om det inte innehåller en annan lista (och är på toppnivå) - CSS-tricks

Anonim

Jag inser att detta är ganska specifikt, men jag var tvungen att skriva den här väljaren tidigare för att åtgärda ett problem och jag använde jQuery eftersom väljaren är ganska avancerad (och behövs för att fungera i webbläsare). Jag behövde välja ankarlänken för ett listobjekt men bara om listobjektet inte innehöll en annan lista och låg på den översta nivån i den kapslade liststrukturen (inte djupare).

$("ul.dropdown > li:not(:has('ul')) a").css(( "background-image": "none", ));

Tanken var att var och en av länkarna på toppnivån i rullgardinsmenyn hade en "nedåtpil" -bild, men de listobjekt som inte hade någon rullgardinsmeny skulle ha tagit bort pilen.