Search anything:

CSS Class Selector

Binary Tree book by OpenGenus

Open-Source Internship opportunity by OpenGenus for programmers. Apply now.

A class selector in CSS is an essential concept for web developers and designers to understand. It allows you to target specific elements on a webpage and apply styles to them. This can be a powerful tool for creating user-friendly and appealing websites, it's a must-know for anyone working with CSS.

What is a class selector?

A class selector in CSS is used to select all elements which belong to a particular class attribute.The class attribute is used to define a specific HTML element, which can then be used to apply CSS styles to that element.

Single class Selector

In order to select the HTML elements with a class attribute in CSS, a period(.) is used followed by the class name.For example, let's say we have a HTML elements with the class name "product-title", we can create a class selector in CSS that targets the element as shown below;

.product-title {
font-size: 30px;
font-weight: 700;
color: #B0B0B0

CSS will apply the above styling on any HTML element with that particular class name.

Multiple classes

It's also possible to apply multiple classes to a single element,for example an element with the class name "products" and "category" as shown below;

<p class="products category">Clothings</p>

CSS can target both of these classes by chaining the class selectors together as shown below;

.products.category {
color: yellow;
font-weight: bold;

Combination of class and element selectors

We can also use a combination of class selectors and element selectors for even more specific targeting of elements. For example, if we want to target all anchor elements within a specific class, we can use the following selector:

.product-name a {
color: red;
text-decoration: underline;

This CSS will apply color red and underline to all anchor tags with the class name product-name.

Keep in mind that class selectors have a higher specificity than element selectors, which means that class styles will override element styles if there is a conflict. This is an important concept to understand when working with CSS, as it can help you to create more specific and targeted styles for your elements.

Pseudo-class selectors

Class selectors can be used in combination with pseudo-classes and pseudo-elements in CSS. A psedo-class is used to select elements based on their state.A pseudo class is expressed by adding a colon (:) after a selector in CSS, followed by a pseudo-class such as "hover", "focus", or "active". For example we can have visited and unvisited links with different colors;

/* unvisited link */
a:link {
  color: #FF0000;

/* visited link */
a:visited {
  color: #00FF00;

With pseudo-classes we can can stylize elements differently when users are hovering over them (:hover) or tabbing to them with the keyboard (:focus) or at that exact moment when users are selecting a link (:active). We can also stylize links differently after users have visited them (:visited). There are many other pseudo-classes available.

Nested elements or classes

We can also select elements (or classes) that's nested within another element or class. For example we want to select all p tags elements that are nested within a div element that uses the "product-section" class as shown below;

div.product-section p {
color: green;

One major benefit of doing this is that you don't need to apply a class to every instance of an element when it's nested within another element that uses a class.

Class selector vs id selector

An id selector targets elements with a specific id attribute, and it's used in the same way as a class selector, but with the hash (#) character instead of the period. For example, if you have an element with an id of "header," you can target that element in CSS with the following selector:

#header {
background-color: blue;
font-size: 30px;

It's important to note that id selectors have an even higher specificity than class selectors. This means that if there is a conflict between an id style and a class style, the id style will override the class style. It's also important to note that each id can only be used once per page, while a class can be used multiple times.


In conclusion, class selectors are a powerful tool in CSS for selectively styling elements on a web page. They allow you to target specific elements based on their class attribute, rather than their type or ID. This allows for greater flexibility and reusability in your CSS, making your code more maintainable and efficient. When used in conjunction with other selectors and CSS cascading rules, class selectors can be used to create dynamic and engaging designs.

CSS Class Selector
Share this