Wednesday, July 3, 2024
HomeLanguagesJavascriptLess.js Extending Nested Selectors

Less.js Extending Nested Selectors

LESS is a simple CSS pre-processor that makes it possible to create manageable, customizable, and reusable style sheets for websites. LESS is a dynamic style sheet language that increases the working power of CSS. LESS is cross-browser compatible. CSS pre-processor is a scripting language that improves CSS and gets compiled into regular CSS syntax so that the web browser can use it. This also provides functionalities like variables, functions, mixins, and operations that enable us to build dynamic CSS.

Extend: LESS Extend is a pseudo-class that helps to merge different selectors, based on putting it with one that matches according to what it is referenced. We can use the LESS extend feature using the :extend keyword.

Extending Nested Selectors: Nested selectors are matched using extend selector.

 

Syntax:

.selector:extend(.bucket tr) {}
.container:extend(.bucket td) {}

Example 1: The following example demonstrates the use of Less.js Extending Nested Selectors in the Less file.

HTML




<!doctype html>
<head>
    <link rel="stylesheet" href="style.css" 
          type="text/css" />
</head>
  
<body>
    <div><br><br>
        <h1 class="container"><b>
          neveropen</b></h1>
        <h2 class="selector"><b
          Example of Extending Nested Selectors</b></h2>        
    </div>
</body>
</html>


style. less:  Create the Less file

CSS




.bucket {
    tr { 
          color: black;
          font-family: Arial, Helvetica, sans-serif;
    }
    td {
        color:green;
        font-family:"Comic Sans MS";
   }
}
.selector:extend(.bucket tr) {}
.container:extend(.bucket td) {}


Now, to compile the above LESS code to CSS code, run the following command:

lessc style.less style.css

The compiled CSS file comes to be: 

style.css

CSS




.bucket tr,
.selector {
    color: black;
    font-family: Arial, Helvetica, sans-serif;
}
.bucket td,
.container {
    color: green;
    font-family: "Comic Sans MS";
}


Output:

 

Example 2: The following example demonstrates the use of Less.js Extending Nested Selectors in the Less file.

HTML




<!doctype html>
<head>
    <link rel="stylesheet" href="ext.css" 
          type="text/css" />
</head>
  
<body>
    <div><br><br>
        <h1><b>neveropen</b></h1>
        <h2 class="cont"><b>
          Example of Extending Nested Selectors....</b></h2>
        <br><br><br>        
    </div>
</body>
</html>


style. less:

CSS




.style {
    .hello {
        color: red;
        font-size: 50px;
    }
}
.cont:extend(.style .hello) {
}
  
h1 {
    color: green;
}
  
div {
    background-color: black;
}


Now, to compile the above LESS code to CSS code, run the following command:

lessc style.less style.css

The compiled CSS file comes to be: 

style.css

CSS




.style .hello,
.cont {
    color: red;
      font-size: 50px;
}
  
h1 {
    color: green;
}
div {
    background-color: black;
}


Output:

 

Reference: https://lesscss.org/features/#extend-feature-extending-nested-selectors

Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, neveropen Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!

Thapelo Manthata
I’m a desktop support specialist transitioning into a SharePoint developer role by day and Software Engineering student by night. My superpowers include customer service, coding, the Microsoft office 365 suite including SharePoint and power platform.
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments