How to Learn CSS
Have you ever wondered how web pages are designed? How do web pages use colors? How do web pages set the fonts for each element? Behind the design of a website is someone who knows CSS, the language used to apply styles to web pages. This person will have carefully chosen exactly how to implement all the styles on a site.
In this guide, we’re going to aim to answer one question: how do you learn CSS? We will start by talking about the basics of CSS. Then, we will look through a list of resources which you may find helpful in your journey to learning CSS.
What is CSS?
Cascading Style Sheets, or CSS, is the language used to apply styles to a web page. CSS styles can appear in their own document or inside a HTML document. For instance, animated elements on a page, gradients on images, colored backgrounds, and tilted images are all made possible through the use of CSS.
A web page does not need CSS to function but without CSS all web pages would look pretty plain: they would all use the same fonts and be almost devoid of color, except where images are used. HTML is for designing the structure of a web page whereas CSS tells a web page exactly how you want particular elements to appear.
Jobs that Require CSS Skills
Any job in web development will require at least a working knowledge of CSS. If you want to be a front-end web developer, who helps set the design for a website, having a strong understanding of CSS is absolutely essential. Front-end web developers will use CSS on a daily basis. Here are a few job titles you will see where CSS is used:
- Front-end web developer
- Back-end web developer
- Full-stack web developer
- UX/UI designer
While UX/UI designers may not directly write HTML for a website, they do need to be aware of the constraints associated with web design. This means UX/UI designers need to have a good understanding of CSS.
CSS is not exclusive to jobs where you are coding the structure of web pages. A knowledge of CSS may help someone using a content management system improve their site. Knowing a bit of CSS may also help someone convey how they want something to appear on a web page to their colleagues.
What Industries Use CSS?
CSS is used in almost all web development projects. Can you imagine a web page with no styles? The page would just be text. As a result, all industries that make use of the web use CSS in some way and to varying extents. Here are a few examples of the sorts of industries that have websites styled with CSS:
- Banking and financial services companies
- Healthcare organizations
- E-commerce providers
- Online game websites
- Insurance providers
- Transport providers
No matter what industry you work in, it is almost certain that a website related to your employer (assuming your employer has one) employs the use of CSS in some way. Of course, many people depend on site generators so they do not write CSS code themselves. But these tools just automatically generate CSS code; they do not escape CSS.
Salary for CSS Developers
The average front-end developer earns a total of $76,929 per year according to Glassdoor. CSS developers are usually called front-end developers. This is because employers expect people who work on the front-end of their websites to have a knowledge of front-end development, the broader field of designing usable websites, of which CSS is only a part.
What Skills Do I Need to Master CSS
To become proficient at using CSS, you will need a basic understanding of the HTML language. Often, people learn CSS alongside HTML because the two languages are so related. A good eye for design is also helpful for learning CSS, but not required. You will pick up a good eye for design as you experiment with styles and figure out for yourself what styles work and what styles are not as good.
Where to Learn CSS
You will find no shortage of resources online for people who want to learn CSS. Many of these resources are positioned to beginners because there is a good demand for front-end web developers and everyone needs to start with the basics. But where should you go to start learning about CSS? We answer this question by listing five top CSS learning resources below.
- Author: Jennifer Niederst Robbins
- Price: $40.73
- Type of Resource: Book
This book is written for people with no web development experience who are interested in making their own websites. At the start of this book, you will learn the basics of how web pages work. Then, you will go on to learning how you can use CSS to style web pages.
This book is in its fifth edition and is up to date with more modern web development techniques. For instance, you will find some information on the Flexbox and grid methods of styling as well as Responsive Web Design, which are all important concepts in modern web programming.
- Author: Frontend Masters
- Price: Free
- Type of Resource: Course/bootcamp
- Author: Codecademy
- Price: Free
- Type of Resource: Course
The Learn CSS Codecademy course guides you through what you need to know about CSS. This course focuses specifically on CSS so you should have a basic understanding of HTML before you start studying.
At the start of this course, you will learn about selectors and the box model. You will then go on to study display, positioning, colors, and layouts. The course is taught in an interactive online learning environment with plenty of examples from which you can work. By the time you finish this course, you will have a good understanding of CSS.
- Author: Jonas Schmedtmann (on Udemy)
- Price: $60.00
- Type of Resource: Course
If you prefer to learn by walking through interactive examples, this course is worth a look. In this course, you will learn to build websites through the use of real-world examples. You will learn the basics of web design, how to approach styling various elements on a site, and making a web page responsive. Having a basic understanding of CSS may be useful for taking this course as the course moves quite quickly.
- Author: freeCodeCamp
- Price: Free
- Type of Resource: Video
This video, which lasts almost one and a half hours, introduces you to the basics of working with CSS. You will start by changing the color of text and quickly advance onto more complicated topics like setting fonts and sizing images. This course moves very quickly and you will probably find yourself pausing the tutorial quite a bit. But, the content of this video is well-explained and taught in a way that is friendly to people with little to know CSS experience.
A Guide to Learning CSS
When you start learning CSS, you are going to come across a range of technical terms. As a beginner, you will probably find yourself asking: which topics should I learn first? Which topics are essential for beginners to learn? Check out our list below for a guide on some of the concepts you must learn as a beginner to CSS.
- Syntax. You need to know the main components of a CSS rule and how to write your own CSS rule both in a CSS file and in a HTML document.
- Selectors. Selectors let you choose which elements on a web page will be affected by a style rule you write. You should know the basic selectors such as class selectors and ID selectors.
- Borders, Margins, and Padding. You should learn how to apply borders, margins, and padding to an element on a web page. You should also learn about the box model and what this model says about the structure of an element.
- Styling Text. Learn how to apply styles to text. Common styles applied to text include underlines, font changes, new colors, and changing the weight (boldness) of some text. You should also learn how to style links.
- Applying Backgrounds. You should know how to create a colored background on an element. It is also worth knowing how to apply an image background on an element.
- Positioning Elements. You will need to learn how to use CSS to influence the position of an element on a web page. What is the position attribute? What does overflow mean? These are the sorts of questions related to positioning that you should be able to answer.
- Pseudo-classes and Pseudo-elements. You should learn the difference between these two concepts. You need to know how these concepts will let you select elements on a web page.
These concepts will help you build a strong understanding of the CSS language. But, there will always be more to learn: CSS is standardized but that does not mean the language stays the same forever. New techniques are discovered by developers all the time which describe how to best use existing features. Similarly, new features are sometimes added to CSS.
How Long Does It Take to Learn CSS?
You can feasibly start applying styles to a web page within a few hours of learning HTML. But, CSS can get complicated quickly. Expect to spend about six months learning about the various styles you can apply to a rule and getting the hang of formatting and positioning. The practice you do in this time will be enough to help you prepare for a career as a front-end web developer.
Should I Learn CSS?
Learning CSS is a requirement if you want to become a front-end web developer. If you only know HTML, which is used for setting out the structure of a web page, you could design a logical web page but that page would have no styles. On the modern internet, having an aesthetically-pleasing and functional site has become a must-have.
Do you see yourself designing websites? Or do you see yourself turning designs someone else has made into a working web page? If you answered yes to either of these questions, you should consider learning CSS.
If you want to work in a back-end web developer job — where you build the behind-the-scenes logic of a website — you will also need a good understanding of CSS. In short, if you want to pursue any career related to developing websites, you will need to know CSS.