Skip to content

Latest commit

 

History

History
54 lines (46 loc) · 945 Bytes

nested.mdx

File metadata and controls

54 lines (46 loc) · 945 Bytes
title
Nested Selectors

Sometimes it's useful to nest selectors to target elements inside the current class or React component. An example with an element selector is shown below.

// @live
/** @jsx jsx */
import { jsx, css } from '@emotion/core'

const paragraph = css`
  color: turquoise;

  a {
    border-bottom: 1px solid currentColor;
    cursor: pointer;
  }
`
render(
  <p css={paragraph}>
    Some text.
    <a>A link with a bottom border.</a>
  </p>
)

You can use & to select the current class nested in another element:

// @live
/** @jsx jsx */
import { jsx, css } from '@emotion/core'

const paragraph = css`
  color: turquoise;

  header & {
    color: green;
  }
`
render(
  <div>
    <header>
      <p css={paragraph}>
        This is green since it's inside a header
      </p>
    </header>
    <p css={paragraph}>
      This is turquoise since it's not inside a header.
    </p>
  </div>
)