Web development has taken a turn towards more candid and fluid information. More people are willing to release free open source code just to help the community and other developers working on similar projects. But aside from free code samples there are dozens of handy webapps, resources, tools, and programs built to enhance the frontend dev experience.
In this article I’d like to share the most helpful web-based tools for CSS development. Understanding CSS requires time and lots of practice. But once you have the basics down everything else comes a lot easier. Using proper tools can expedite the development process so that tasks are finished quicker and more accurately.
Online guides can refer to a select number of resources. My personal favorite is the CSS3 Properties Explained infographic which displays content in a graphical format. This means you aren’t able to copy/paste any code samples, but you can check back like a book or manual for CSS3 web development. Other infographic topics include browser compatibility and the history of CSS.
Aside from large images there are also real websites designed as CSS reference guides. Most people know about W3 Schools which habitually ranks quite high in Google searches. A more detailed guide is CSS-Tricks which has free code samples and quick tutorials related to more complicated subjects on CSS.
More useful guides: 40 CSS Apps, Tools, and Resources
Browsing through that list could take a while since it’s a big reference guide. If you’re looking for something specific try searching the website or searching in Google with the keywords “mozilla developer”. For example the pseudo-classes list has its own page on the site with thorough descriptions and plenty of detail for even experienced developers.
Many free code generators have sprung up since the advent of CSS gradients, box shadows, and rounded corners. When these properties were first created it was bewildering to keep up with all the different browser prefixes. To this day there are still many prefixes which must be considered, especially for supporting older versions of Internet Explorer.
One example of a code generator is CSS3.me. You can generate codes for opacity, border radius, box shadows, and background gradients. The output is meant to support as many browsers as possible. Another option is CSS Matic which also has a noise generation feature.
A much more detailed option would be something like Enjoy CSS. This is a web-based app with a graphical user interface. You can generate custom styles for input fields, buttons, blocks, really any major element on a webpage. Each project can be saved in the cloud and offers a dynamic check for browser support. You can even browse the Enjoy CSS gallery to check out what other developers have created.
If you’re into SASS & Compass you might also try Create CSS3. This webapp gives you the option of copying direct CSS3 properties or SASS code. Not as many developers have moved onto SASS but it is still one hell of a time saver when it comes to rewriting code.
Modern CSS libraries have come a long way. The open source community is a driving factor with greater support for animations, UI kits, and full-blown libraries such as Bootstrap.
I don’t want to just list the major grid systems because there are lots of articles on that topic. However the process of using a grid system is very important and sometimes confusing, so I’ll go over the basics. Not every project will require a grid but each grid library constructs a beautiful framework to build with.
Grid systems are usually created with a number of pre-determined classes. These classes represent containers for different columns which span a variety of widths. Fluid containers are more flexible so a 4-column container might have four even columns(25%), or a mix(one col 40% and three cols 20%). Many of these grids are also responsive which accommodate to media queries.
Modern grid libraries also work great with custom typography to organize paragraphs and headers in unison. Website typography is a complicated subject that some designers can spend years studying. Of course I would also recommend that everyone study grid typography just for the beneficial knowledge and how it applies to every field of design.
As your skills improve you might prefer developing your own custom grid library. But when it comes to rapidly building a design into HTML/CSS you can always rely on a handy-dandy grid system.
Testing & Packaging
Online tools related to testing and preparation are designed for code management. These tools won’t help you write the code, but they will help you deploy optimized CSS files.
Now in the realm of code management there are plenty of online minimizers, restylers, and cleaners. Styleneat is a brilliant tool that simplifies CSS code from an online URL, uploaded file, or code which is copied and pasted directly into the webapp. This can help with organization if you find yourself looking at a messy stylesheet.
Code Beautifier is another choice which offers a lot more in the way of customization. What I like about Code Beautifier is that you can also compress the CSS file down to it’s smallest filesize. This would remove all of the unnecessary whitespace to output the smallest file possible. The benefits are twofold in that (1)the file loads quicker, and (2)other developers would have a more difficult time stealing your code(assuming it’s not open source).
I certainly hope these tools prove useful to developers at any stage of the learning process. Understanding where to get started can be difficult, but learning CSS was a whole lot more difficult ten years ago. Take advantage of these resources to the fullest extent and push yourself to be a fountain of CSS knowledge. If there are other resources I forgot to include feel free to share in the comments section.