Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

CSS Selectors

CSS Selectors

CSS Selectors: Targeting the Elements You Want to Style

Without the precise targeting of CSS selectors, web design would remain a chaotic jumble of pixels, lacking the visual hierarchy and aesthetic cohesion we expect from today’s websites. These powerful tools allow you to pinpoint the exact HTML elements you want to apply your CSS rules to. Mastering selectors is crucial for crafting beautiful and consistent website designs.

Types of CSS Selectors:

There are several types of selectors, each targeting elements based on different criteria. Here are the most common ones:

  • Element selectors: These target elements based on their HTML tag name, for example, h1pdiv.
  • Class selectors: These target elements with a specific class attribute, prefixed with a dot (.), for example, .heading.paragraph.
  • ID selectors: These target elements with a unique ID attribute, prefixed with a hash (#), for example, #header#main-content.
  • Descendant selectors: These select elements that are descendants of another element, separated by a space. For example, div p selects all <p> elements within <div> elements.
  • Child selectors: These select elements that are immediate children of another element, using the > symbol. For example, ul > li selects all <li> elements that are direct children of <ul> elements.
  • Adjacent sibling selectors: These select elements that directly follow another element, using the + symbol. For example, p + img selects all <img> elements that directly follow <p> elements.
  • Pseudo-classes: These target elements based on their state or behavior, prefixed with a colon (:). For example, :hover selects elements when the mouse hovers over them, :active selects elements when clicked, and :first-child selects the first child element of its parent.
  • Pseudo-elements: These target specific parts of an element, prefixed with two colons (:). For example, ::first-line selects the first line of an element, and ::before and ::after allow inserting content before or after an element.

Combinations and Specificity:

Selectors can be combined to achieve more precise targeting. For example, div.container h2 selects all <h2> elements within elements with the class container and tag name div.

However, when multiple selectors target the same element, conflicting rules need to be resolved. This is where specificity comes in. Selectors with more specific criteria take precedence. In the hierarchy of CSS specificity, an ID selector reigns supreme, followed by its loyal subjects, class selectors, who in turn outrank the humble element selectors.

Examples of CSS Selectors in Action:

Here are some examples of how you can use CSS selectors to style your website:

  • Change the color of all paragraphs:
p {
color: red;
  • Style all elements with the class important with a bold font:
.important {
font-weight: bold;
  • Add a border to the first image in the document:
img:first-child {
border: 1px solid black;
  • Make links underline when hovered over:
a:hover {
text-decoration: underline;

By mastering CSS selectors, you unlock a powerful tool for creating beautiful and impactful web pages. So start exploring, experiment, and see what you can create!

Scroll to Top