estyle

1.4.0 • Public • Published

estyle

SCSS responsive design pattern


DEMO


install

npm install estyle

Glossary

SCSS

Add link to file:

@import "~estyle/index.scss";

Responsive Design

Breaskpoints - the screen width values which usually defines different devices.

Breaskpoint Width Mobile First CSS Desktop First CSS
sm 640px @media (min-width: 640px) { ... } @media (max-width: 640px) { ... }
md 768px @media (min-width: 768px) { ... } @media (max-width: 768px) { ... }
lg 1024px @media (min-width: 1024px) { ... } @media (max-width: 1024px) { ... }
xl 1280px @media (min-width: 1280px) { ... } @media (max-width: 1280px) { ... }
2xl 640px @media (min-width: 1536px) { ... } @media (max-width: 1536px) { ... }

Mobile First

Mobile first breakpoint system. Means that by default styles applyied to all screens, but when you set styles for mf-lg they will be applied to lg(1024px) screens or above.

SCSS mixing Minimum width CSS
mf-sm 640px @media (min-width: 640px) { ... }
mf-md 768px @media (min-width: 768px) { ... }
mf-lg 1024px @media (min-width: 1024px) { ... }
mf-xl 1280px @media (min-width: 1280px) { ... }
mf-2xl 1536px @media (min-width: 1536px) { ... }
mf($value) custom @media (min-width: $value) { ... }

Example:

.container {
  font-size: 12px;

  // when scrren is `lg` or more
  @include mf-lg {
    font-size: 16px;
  }

  // when scrren is `1500px` or more
  @include mf(1500px) {
    font-size: 16px;
  }
}

Desktop First

Desktop first breakpoint system. Means that by default styles applyied to all screens, but when you set styles for df-lg they will be applied to lg(1024px) screens or below.

SCSS mixing Maximum width CSS
df-sm 640px @media (max-width: 640px) { ... }
df-md 768px @media (max-width: 768px) { ... }
df-lg 1024px @media (max-width: 1024px) { ... }
df-xl 1280px @media (max-width: 1280px) { ... }
df-2xl 1536px @media (max-width: 1536px) { ... }
df($value) custom @media (max-width: $value) { ... }

Example:

.container {
  font-size: 12px;

  // when scrren is `lg` or less
  @include df-lg {
    font-size: 16px;
  }

  // when scrren is `1500px` or less
  @include df(1500px) {
    font-size: 16px;
  }
}

children

Adds styles to all children tags

.container {
  @include children {
    color: white;
    background-color: black;
  }
}

scrollbar

Adds styles scrollbar

.container {
  @include scrollbar(
    // scrollbar width
    8px, 
    // track and thumb border radius
    3px, 
    // track color
    #F2F2F2, 
    // thumb color
    #E5E5E5,     
    // hover thumb color
    #D8D8D8
    );
}

Package Sidebar

Install

npm i estyle

Weekly Downloads

1

Version

1.4.0

License

ISC

Unpacked Size

5.79 kB

Total Files

4

Last publish

Collaborators

  • vimbat