Ready to watch this entire course?
Become a member and get unlimited access to the entire skills library of over 4,900 courses, including more Developer and personalized recommendations.Start Your Free Trial Now
- View Offline
- Understanding boilerplates, grids, and frameworks
- Choosing a framework
- Building your own framework
- Crafting a deployment strategy
- Modifying files
- Customizing typography and color
- Filling in framework gaps
- Exploring grid-based syntax
- Nesting grids
- Using mobile grids
Skill Level Beginner
One of the most confusing things about CSS frameworks is what exactly a framework is. A broad definition would be that they are a collection of CSS files that contain predefined rules for layout, typography, and browser resets. However, the more that you research them, the more confusing it can get. You're likely to encounter terms like boilerplate, bootstraps, frameworks, and grid systems with each one of them seeming to promise more than the next one. If you dig a little deeper, you'll find that although in some cases the terms are used interchangeably, there are some subtle differences between them.
For the most part, they all refer to a collection of assets that are designed to speed up the development of sites. So although the terms themselves aren't really well defined, let's take a look at what most people are referring to when they use them. A boilerplate usually refers to a set of templates that are focused around a very specific standard or goal. Take the HTML5 Boilerplate that you see here, for example. Now this focuses on providing starter pages in assets for building HTML5 sites and apps.
Boilerplates are typically meant to provide the starting point for a project focused on specific best practices. Frameworks, on the other hand, are usually more of a collection of assets that provide a system for building sites. Now this system usually has a specific focus such as building responsive sites, crafting user interfaces, or specific typographic approach. Now some frameworks might feature a single focus, while others attempt to provide a diverse set of options for users. Grid systems are similar to frameworks but tend to be focused specifically on page layout.
Most feature a small number of CSS files that are built around container level classes. Although some feature starter pages and demo files, now these are typically much smaller than a full framework. It's also worth noting that many frameworks also contain a grid system as part of the overall framework. You may have also come across the term Bootstrap, now that's almost entirely due to Twitter's Bootstrap Project which you can see here. Bootstrap was the result of Twitter releasing a UI framework for building Twitter-themed pages.
The project took a life of its own, and it was spun off from Twitter as a stand-alone framework. Although it's a little bit more comprehensive than most frameworks, there is nothing that really sets it apart as a totally different system. For that reason, you should think of the term Bootstrap as more of a marketing term than anything else. However, with the amazing popularity of Bootstrap, it wouldn't surprise me at all to see people begin to refer to some of the more complex UI frameworks as Bootstraps, so that's something you may want to keep an eye on.
So that's a brief overview of some of the terminology I'll be using throughout this course. Keep in mind that there's an amazing amount of diversity among frameworks, grid systems and boilerplates, so often it's not so much looking for a specific type of system, but rather looking for the system that's going to work best for you and your projects.