mirror of
https://github.com/emotion-js/emotion.git
synced 2026-01-25 16:42:24 +00:00
* 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
48 lines
873 B
Plaintext
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>
|
|
)
|
|
```
|