LESS - Multiple &



Description

The & will not just represent the nearest selector but also represents all the parent selectors.

Example

The following example demonstrates the use to & representing all the parent selectors in the LESS file −

parent_selector.htm

<html>
   <head>
      <link rel = "stylesheet" href = "multiple1.css" type = "text/css" />
   </head>

   <body>
      <div class = "grand_parent">
         <h3>Welcome to TutorialsPoint</h3>
         <p class = "parent"> It is possible to reference the 
         parent selector by using &(ampersand) operator.</p>
         <p class = "parent_class">It is possible to reference the 
         parent selector by using &(ampersand) operator.</p>
      </div>
   </body>
</html>

Next, create the style.less file.

style.less

.grand_parent {
   .parent {
      & > & {
         color: #A9F5F2;
      }

      & & {
         color: #D0FA58;
      }

      && {
         color: #81BEF7;
      }

      &, &_class {
         color: #A4A4A4;
      }
   }
}

You can compile the style.less file to style.css by using the following command −

lessc style.less style.css

Execute the above command; it will create the style.css file automatically with the following code −

style.css

.grand_parent .parent > .grand_parent .parent {
   color: #A9F5F2;
}

.grand_parent .parent .grand_parent .parent {
   color: #D0FA58;
}

.grand_parent .parent.grand_parent .parent {
   color: #81BEF7;
}

.grand_parent .parent,
.grand_parent .parent_class {
   color: #A4A4A4;
}

Output

Follow these steps to see how the above code works −

  • Save the above html code in the parent_selector.htm file.

  • Open this HTML file in a browser, the following output will get displayed.

Less Parent Selector
less_parent_selectors.htm
Advertisements