include-media
Simple, elegant and maintainable media queries in Sass
What?
include-media is a Sass library for writing CSS media queries in an easy and maintainable way, using a natural and simplistic syntax.
2.0 Release
As of 2.0 include-media only supports dart-sass 1.25+
Why?
I spent quite some time experimenting with different libraries and mixins available out there, but eventually all of them failed to do everything I needed in an elegant way. Some of them wouldn't let me mix set breakpoints with case-specific values, others wouldn't properly handle the CSS OR operator and most of them had a syntax that I found complicated and unnatural.
include-media was the result of that experience and it includes all the features I wish I had found before, whilst maintaining a simplistic and natural syntax.
How to install
- With npm:
npm install include-media
- With yarn:
yarn add include-media
- With Bower:
bower install include-media
- With Rails:
gem 'include_media_rails'
(maintained by KaoruDev) - Manually: get this file
Finally, include the file in your project using an @import
statement.
How to use
Examples can be found here.
Plugins
- include-media-export - Reference include-media breakpoints in JavaScript.
- include-media-columns - Generate column classes using the BEMIT naming convention, automatically referencing include-media breakpoints.
- include-media-spread - Calculates the difference between property values and distributes them through your include-media breakpoints.
- flex_e_ble - Uses your include-media breakpoints to create your own flexible class naming structure on top of a
flex
based grid withinline-block
fallback for IE8+ compatibility. - include-media-grid - An include-media plugin for generating grid classes based on the flex display.
- im-to-em - A tiny function to convert include-media breakpoints from
px
toem
. - include-media-hidden-classes - An include-media plugin to generate classes for hiding elements.
- Fluid-Size: Use include-media breakepoints to provide the
fit size
for the device.
Learn more
- https://eduardoboucas.github.io/include-media/
- Documentation
- Approaches to Media Queries in Sass (CSS-Tricks)
- Write Simple, Elegant and Maintainable Media Queries with Sass (David Walsh blog)
- Generating Alternative Stylesheets for Browsers Without @media (David Walsh blog)
- Create Simple Inline Media Queries with include-media (WebDevStudios)
- Breakpoints and Tweakpoints in Sass (SitePoint)
Related projects
- include-media-or - A fork of include-media with support for complex queries with logical disjunctions (maintained by Nirazul).
The authors
include-media was created by Eduardo Bouรงas and Kitty Giraudel. The lead maintainer is Jack McNicol.
We want to hear from you
We'll be on the lookout for your issues and pull requests โ but make sure you read this before submitting any code!
License
This project is licensed under the terms of the MIT license.