emotion/docs/nested.mdx
Sam Magura 4003819a2a
Upgrade to latest Next.js (attempt 2) (#2805)
* Remove old site, create new Next app

* Site header

* Fix manypkg issues, copy in bootstrap-reboot.min.css

* Website progress

* Website progress

* Website progress

* yarn.lock

* Website progress

* Fix manypkg errors

* Website progress

* Website progress: markdown CSS

* Website progress

* Website progress

* Remove spectrum badge from README

* Add Carbon ads

* Add DocSearch

* Add favicon and set page <title>

* Website tweaks

* Update Netlify config and use next-export

* Remove unnecessary dependencies from root package.json

* Add custom 404 page

* Live editor works (no Babel yet)

* [wip] Babel compilation

* About to remove web worker stuff

* Website: Live code editor stuff

* Remove Mac-specific step from CONTRIBUTING

* Update CONTRIBUTING for new website development

* Done with live code editors

* Bring awesome-emotion into repo as an MDX doc

* Add redirects to netlify.toml

* Website styling, remove @jsx pragma from live code examples

* Remove incorrect slack link from community.mdx

* Review & tweak website styles

* Make tables responsive on mobile

* Set up @next/bundle-analyzer

* Get @emotion/babel-plugin to work in the browser (HACKS)

* Change Carbon ad when path changes

* Fix live editor issues

* Do LiveEditor compilation in web worker

* Fork react-live

* Working on live editors

* Fix LiveProvider useEffect

* Live editor tweaks

* Fix web worker @emotion/babel-plugin import

* Add website TS TODO

* Add more detail to comment

* Fix some but not all manypkg issues

* Fix Safari-specific styling issues

* Website: Use webpack alias for @emotion/babel-plugin

* Add comment explaining module aliasing hack

* site: Upgrade docsearch

* site: Upgrade some packages

* site: Upgrade some packages

* site: Upgrade next-mdx-remote

* Fix layout shift when carbon ads is loading

* Make CI use Node 14

This is required for next-mdx-remote v4

* Remove .nvmrc to fix Netlify build

* Add Ukraine banner to new website

* Fix minor issues in styled.mdx

* Minor mobile fixes

* Convert GFM tables to HTML so we don't need the remark-gfm plugin

* Upgrade all website packages

* Update docsearch appId and apiKey (see #2718)

* Fixed CacheProvider demo in the docs (see #2678)

* CodeSandbox CI node 16

* Simplify .gitignore

* Website cleanup after reviewing diff

* Fix multiple @types/react

* Add test:typescript script to emotion-site

* Make all code blocks have the same font-size

* Autolink headings

* Minor website fixes

* remark-responsive-tables
2022-07-13 09:48:27 -04:00

48 lines
873 B
Plaintext

---
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.
```jsx
// @live
import { css } from '@emotion/react'
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:
```jsx
// @live
import { css } from '@emotion/react'
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>
)
```