Git Product home page Git Product logo

cssremedy's Introduction

CSS Remedy

Start your project with a remedy for the technical debt of CSS.

This project is just getting started. It's too early to distribute it as part of other frameworks. Feel free to read the files and take inspiration, but do know we have a ways to go before it's really "ready to use".

Contribute

We'd love to have you contribute to this project. See the contributing guidelines for more detail.

What Is This?

For years, base or reset stylesheets have helped web developers get started faster.

Early resets eliminated all visual styling, putting the burden of defining styles for every element on the webmaster. This made sense when there weren't as many elements or properties, and when each browser did something very different than the others. By zeroing everything out, you start from a blank page. There were many reset stylesheets that took this approach. Eric Meyer's became the most popular.

More recently, Normalize and similar projects took a different approach. Rather than removing all styling, they set out to create sensible defaults and eliminate browser bugs. Use one of these and you get a consistent base across all browsers.

CSS Remedy takes a slightly different approach. These days, browsers are far more consistent in how they render CSS. But there are limitations on how far browsers can improve their User Agent Stylesheet. The defaults for the web have to be consistent with the past. Many desirable changes would break millions of existing websites.

You, however, don't have to stay in the past. You can override the UA styles with more modern ideas of how CSS should work by default. Introducing CSS Remedy.

‘Because that’s what Mosaic did’ is exactly the kind of reasoning CSS Remedy is trying to leave behind.

---Eric Meyer

Guiding Ideas

CSS Remedy sets CSS properties or values to what they would be if the CSSWG were creating the CSS today, from scratch, and didn't have to worry about backwards compatibility.

We provide:

  • A core remedy.css that we recommend using broadly across most projects.
  • A secondary reminders.css with more opinionated or situational remedies that should be reviewed and considered on a case-by-case basis.
  • Additional specialized remedy files (such as quotes.css) that can be used as-needed, but may not be required generally.

The current set of features can be extended along those lines, with opportunities for light-weight form-styling and other useful defaults. This is a living project, and we're excited to see where it goes!

Browser Support

We will actively support modern browsers, IE 11 and up. For older browsers:

  • We will add proven fixes when they are light-weight and non-invasive. We're not trying to ensure full interoperability, but we do want to help encourage reasonable fallbacks.
  • We won't "support" older browsers with any sense of urgency, priority, or completeness.
  • We're not trying to polyfill new CSS features like grid, or recreate the full html5 "shiv"

Inspiration and History

cssremedy's People

Contributors

0xflotus avatar blakeprudhomme avatar callahad avatar drmonkeyninja avatar dylanatsmith avatar edthepro101 avatar fantasai avatar frivoal avatar jensimmons avatar joe-bell avatar jonathantneal avatar lauriemustafic avatar lowmess avatar malvoz avatar marktnoonan avatar mirisuzanne avatar moe007 avatar nhoizey avatar pimdewit avatar schweinepriester avatar thierryk avatar tomayac avatar willtheorangeguy avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.