Is there a way of adding CSS rules to an element only if it has an certain child element ? I do know it is not possible to do it with CSS, but I'm not sure if it is possible to do it with LESS.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
If it is not possible with CSS, then it is not possible with LESS, which compiles to plain old vanilla CSS.
The problem is, that the LESS is compiled without knowledge of the HTML it is applied to, and without any client side scripting. Therefore, it is impossible to achieve anything with LESS that can not be achieved by using CSS alone.
You could achieve what you want by using client side javascript, or you could wait until CSS4 comes out, and use the parent selectors to the same effect as what you want.
回答2:
This isn't possible in CSS or LESS.
I would suggest your best bet is jQuery.
If your parent element is .parent
and your child is .child
, you could do:
$('.parent:has(.child)').addClass('myClass');
See Example: http://jsfiddle.net/d8Lz5/