Socket
Socket
Sign inDemoInstall

@emotion/styled-base

Package Overview
Dependencies
5
Maintainers
2
Versions
73
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

@emotion/styled-base


Version published
Maintainers
2
Install size
301 kB
Created

Package description

What is @emotion/styled-base?

@emotion/styled-base is a library for writing CSS styles with JavaScript. It allows you to create styled components with a tagged template literal syntax, providing a powerful and flexible way to style your React components.

What are @emotion/styled-base's main functionalities?

Creating Styled Components

This feature allows you to create styled components using the `styled` function. The example demonstrates how to create a styled button with hover effects.

const Button = styled.button`
  background-color: hotpink;
  color: white;
  padding: 10px;
  border: none;
  border-radius: 5px;
  &:hover {
    background-color: darkmagenta;
  }
`;

Theming

Theming allows you to define a theme object and use it throughout your application. The example shows how to use the `ThemeProvider` to pass a theme to styled components.

import { ThemeProvider } from '@emotion/react';

const theme = {
  colors: {
    primary: 'hotpink',
    secondary: 'darkmagenta'
  }
};

const Button = styled.button`
  background-color: ${props => props.theme.colors.primary};
  color: white;
  padding: 10px;
  border: none;
  border-radius: 5px;
  &:hover {
    background-color: ${props => props.theme.colors.secondary};
  }
`;

const App = () => (
  <ThemeProvider theme={theme}>
    <Button>Click me</Button>
  </ThemeProvider>
);

Dynamic Styling

Dynamic styling allows you to change styles based on props. The example demonstrates how to create a button that changes its background color based on the `primary` prop.

const Button = styled.button`
  background-color: ${props => props.primary ? 'hotpink' : 'gray'};
  color: white;
  padding: 10px;
  border: none;
  border-radius: 5px;
  &:hover {
    background-color: ${props => props.primary ? 'darkmagenta' : 'darkgray'};
  }
`;

const App = () => (
  <div>
    <Button primary>Primary Button</Button>
    <Button>Secondary Button</Button>
  </div>
);

Other packages similar to @emotion/styled-base

FAQs

Last updated on 22 Feb 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc