首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有迷人的css-in-js的子选择器

具有迷人的css-in-js的子选择器
EN

Stack Overflow用户
提问于 2017-08-12 10:15:13
回答 1查看 6.2K关注 0票数 3

我已经尝试了css-in-js的迷人的图书馆,不能把我的头脑围绕在一件事上。

使用普通css,您可以轻松地将样式添加到类中的所有选择器中,例如:

代码语言:javascript
复制
.my-awesome-class div {
  margin-right: 10px;
}

有什么方法可以用迷人的方式来实现它吗?例如,在这个片段中,我正在寻找一种方法来声明容器中的所有div都应该有一个20 it的margin-right,而不需要将它传递给每个组件:

代码语言:javascript
复制
import React from 'react';
import { render } from 'react-dom';
import glamorous, {Div} from 'glamorous';

const Container = glamorous.div({
  display: 'flex'
});

class App extends React.Component {
  render() {
    return (
      <Container>
        <Div backgroundColor="tomato" padding="10px">One</Div>
        <Div backgroundColor="wheat" padding="10px">Two</Div>
        <Div backgroundColor="salmon" padding="10px">Three</Div>
      </Container>
    );
  }
}

render(<App />, document.getElementById('root'));

下面是一个指向工作片段的链接:https://stackblitz.com/edit/glemorouschildselector

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-16 11:51:57

迷人的组件工厂风格的论点是由魅力驱动的,它支持上下文选择器。

上下文选择器:&将被指向目标规则的“指针”替换

代码语言:javascript
复制
const Container = glamorous.div(
    {
        display: 'flex',
        '& div': {
            marginRight: '20px',
        },
    },
)

魅力选择器文档:https://github.com/threepointone/glamor/blob/master/docs/selectors.md

工作演示:https://stackblitz.com/edit/glemorouschildselector-fzj77j

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45649078

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档