CSS has been around for more than 20 years and has always been relatively easy to pick up but difficult to master. It's tempting to just start writing CSS for a new project, but if you don't plan ahead you can end up with large, unwieldy stylesheets which become difficult to work with. A common sign of this is having a lot of
!important declarations in stylesheets.
Badly written CSS also has a negative impact on browser performance. Some CSS properties, such as CSS Animations, are really powerful but can slow a browser to a crawl when used wrong.
When you write CSS for large projects this becomes a problem. It's essential to set up a system to ensure that you can continue developing and be sure that your codebase stays maintainable and performant.
Fortunately there are solutions to these pitfalls of CSS. Browser support has improved and CSS has evolved over the years and is now capable of much more than 20 years ago. CSS has enough features to build every layout possible.
With new features such a Flexbox, Grid and Custom Properties (CSS variables) it has become a lot easier to build and style complex interfaces in a sane and maintainable way.
Add to that things like Sass; a pre-processor language for CSS which can help enormously when dealing with complex stylesheets, and BEM; a methodology for efficient naming of HTML components.
With these tools and methods it becomes possible to set up a future-proof scalable system that you can continue to use with confidence.
Hire me for your project
I have been writing CSS for more than 15 years for websites, web applications and mobile websites. I advice and help companies with setting up maintainable and scalable CSS systems.
Contact me if you need a CSS solution!