šŸŽ Checkout my Learn React by Making a Game course and get 1 month Free on Skillshare!

Native CSS selector nesting is here

Yesterday Google Chrome announced the support for native CSS nesting:

The native CSS selector nesting is very similar to what you would have before in CSS processors such as SASS or LESS:

.header {
    .logo { background-color: orangered; }

    .nav-item { color: blue}
}

The & special character matches the nearest parent selector:

.header {
    /* & points to  .header */
    &:hover {
    }
    .logo {
        /* & points to  .logo*/
    }
}

While & is not needed for selectors such as classes or ID's it is mandatory for raw tag selectors:

.header {
    /* ā›”ļø invalid */
    span {
    }

    /* āœ… valid */
    & span {
    }
}

We can also include media queries directly in the nesting loop:

.header {
    @media (max-width: 600px) {
        align-items: left;
    }
}

Currently, this feature is fully supported in Chrome, Safari Technology Preview (both for web and iPhone) and very soon will be available on Edge. For full compatibility, you can use the Post CSS nesting plugin.

šŸ“– 50 Javascript, React and NextJs Projects

Learn by doing with this FREE ebook! Not sure what to build? Dive in with 50 projects with project briefs and wireframes! Choose from 8 project categories and get started right away.

šŸ“– 50 Javascript, React and NextJs Projects

Learn by doing with this FREE ebook! Not sure what to build? Dive in with 50 projects with project briefs and wireframes! Choose from 8 project categories and get started right away.


Leave a Reply

Your email address will not be published. Required fields are marked *