CSS Frameworks

Mai Pham
5 min readJul 11, 2021

Top 3 styling tools for web developers

(Credit: Getty Images)

I consider myself to be a pretty creative person and I love all aspects of decorating and styling and prettying things up, so to speak, in real life. But when it comes to CSS, all my creativity goes out the window. I want to love it so much but it can just be so difficult to love. If you’re anything like me, you love being a front-end developer but CSS is the bane of your programming existence, you’re not alone. In this week’s blog post, I will discuss CSS frameworks and tools to *hopefully* make your life easier!

What is CSS?

CSS stands for Cascading Style Sheets. It is a styling language that makes a website look more appealing than just a plain page of text. HTML determines textual content while CSS determines visual structure, layout and aesthetics. It is responsible for color (background, buttons, etc), formatting, and font (color and size). Think of it like when your new house gets built. CSS is the decoration and styling you put into making your house look and feel cozy and quaint. Without it, your house would feel empty and unfinished.

Writing pure CSS code can be tedious and time-consuming, not to mention, a headache especially when you have a large-scale project. To help make a developer’s life a little easier, a number of CSS frameworks or libraries that have emerged. The purpose is to bring more standardized practice for web development. It allows you to use predefined web elements.

1. Bootstrap

(Credit: Twitter)

A free and open-source CSS framework for front-end web development that follows a mobile-first approach. It is a JavaScript-based design templates for forms, buttons navigation and other interface components. Bootstrap is backed by Twitter and is the most popular CSS framework out there. There are many free and premium templates you need.

  • Fully-featured: Has pre-built dynamic template with countless ready-to-use components. This makes it easy for developers without CSS experience to develop well-structured pages.
  • Customizable: Bootstrap is easily customizable using Sass. Install the project with npm or yarn, import the parts needed and then use Sass variables to customize anything else.
  • Rapid Prototyping: No need to stress out about alignment or layout of the components. All you need is to write out the HTML and then apply the appropriate CSS classes to the div. The pre-defined styles get applied to your element.

The downside to Bootstrap is the monotony. Because the elements/components have their own default settings, it creates a UX that is pretty similar or familiar. It is quite hard if you want those settings to change. In other words, if you use its predefined forms, but you want to change the font or the alignment, it could mean extra work to override their settings to change your font or align differently.

2. Foundation

(Credit: Zurb.com)

Foundation is one of the most sophisticated and advanced UI frameworks. Enabling faster website development and is fully responsive. It is not just a CSS framework but a complete frontend framework with a ton of useful tools. Similarly to Bootstrap, Foundation is also uses a mobile-first approach. However, unlike Bootstrap, Foundation allows developers to explore their creativity as much as possible.

  • Easy: To read and understand
  • Flexible: Gives developers the freedom to style based on their desires
  • Animations: Can be integrated with Zurb’s Motion UI library that allows developers to create transitions and animations using built-in effects.

One of the downsides to Foundation is that it can be hard to learn at first because it gives you too many options and countless of features. This makes it difficult to choose from when you are not too savvy with CSS and want to quick development of apps.

3. Tailwind

(Credit: Pinterest)

Tailwind allows for faster development of the front-end. Instead of using a default theme or built-in UI components like other CSS frameworks, Tailwind gives you pre-designed widgets menu and utility classes to build your site. Tailwind uses modular components which means if you make changes in one component, the other parts of your code won’t get affected. Tailwind allows developers to implement their own unique style faster.

  • Reusable Components: Although Tailwind doesn’t include any pre-designed components, it allows developers to create custom components that can be reused throughout projects.
  • No Pre-defined Styles: Tailwind doesn’t provide pre-made components or specific designs so developers have more freedom with their designs without having to override existing styles.
  • No Naming or Context Switching: You don’t have to switch between HTML and CSS to see the changes

The downside of Tailwind is that it has a high learning curve. It is not the best choice for less experienced developers since it doesn’t provide pre-made designs and components. It will take time to fully understand how it works before you can really be productive with it.

So no matter how much you hate CSS, it is a necessary evil for a beautiful and attractive user experience on your site. CSS can help make your life a little easier but it all depends on your comfort with styling. It is worth learning a CSS framework that you believe will ease the hardship when developing your website. After all, CSS is trial and error and it takes time to get used to it.

Overall, for beginners, I recommend using something like Bootstrap to get familiar with CSS. Once you become comfortable with the pre-designed components, then move on to something a little less restrictive like Foundation or Tailwind.

Good luck, yall!

--

--