create account

CSS Selectors: How they work and Types of CSS Selectors by gotgame

View this thread on: hive.blogpeakd.comecency.com
· @gotgame ·
$0.20
CSS Selectors: How they work and Types of CSS Selectors
A CSS selector is an aspect of CSS rules set that helps selects the elements we would like to apply specific styles to.

CSS Selectors enable us to focus on specific HTML components and apply different CSS styles to them.

For example let's say we want our entire page to appear with a grey background, the CSS style to effect that will be 

```
body {
	background: grey;
	}
```

In the above line of code `body` is used to indicate that all contents nested in the body element should be given a background of `grey`.

The `CSS` selector in this context is `body` which is classified and referred as a type selector.

There are a number of CSS selectors available, here's a list of 4 common selectors with quick descriptions to get you going.

## Types Of CSS Selectors

#### 1. Type Selectors

Type selectors usually match the name of the elements they are targeting. 

Here are examples of **Type Selectors**

```
body {
	background: grey;
	}

a {
	color: white;
	}

ul {
	height: 300px;
	}
```

The CSS selectors in the style above are `body`, `a`, and `ul`.

- `body` will affect the contents of `<body></body>` tag.

- `a` will affect the contents of the `<a></a>` tag.

- `ul` will affect the contents of the `<ul></ul>` tag.


#### 2. Class Selectors

Class selectors matches the value of a class attribute value assigned to any element. 

The styles set for this class attribute value will be applied on the element on the class is assigned to.

Here's an example on how to use class selectors

**HTML**

```
<p class="warning">Danger</p>
```

**CSS**

```
.warning {
	background: red;
	color: white;
	}
```
Because the `<p></p>` tag has been assigned a class attribute value `warning`, it's contents will appear on the page with a `red` background and text color set to white.

Class selectors are declared by adding a `.` before typing the class attribute value in the CSS stylesheet.

An instance can be found in the example above where the attribute was referred to as `.warning` instead of `warning`

#### 	3. ID Selectors

ID selectors matches the value of a id attribute assigned to any element.

All styles set for the id value in the stylesheet will be applied on the contents of the tags containing a matching the id attribute value in the HTML (just like class selectors).

Here's an example

**HTML**

```
<p id="warning">Danger</p>
```

**CSS**

```
#warning {
	background: red;
	color: white;
	}
```

Having a id value `warning`  in any tag will make the content of the element appear with a `red` background and text-color set to `white`.

Note that class selectors and id selectors are quite similar in their use cases save for one distinction which is explained below.

Where class selectors are declared by using the prefix `.` id selectors make use of the `#` symbol.

In the example above we use `#warning` as the selector instead of using `.warning` which is a class selector or `warning` which is wrong syntax and won't work at all.

#### 4. Descendant Selectors

Unlike other selectors mentioned earlier in this post `descendant selectors` work differently.

The distinction that comes with using descendant selectors is that other selectors use one parameter to identify the target element, whereas in the case of descendant selectors it take two parameters to identify the target element.

Here's an example showing a descendant selector in use

**HTML**

```
<p>Let's ride on <span>to  greatness</span></p>
```

**CSS**

```
p span {
	color: blue;
	}
```

The above CSS code will apply the set styles to all contents of any `<span></span>` tag nested within a `<p></p>` in the HTML.

Descendant selectors are not limited to element tags only, we can also use class and id attribute values in place of tags. 

In future posts we will cover other types of CSS selectors.

Meanwhile, you can find additional information on CSS selectors by checking out Mozilla's [MDN Web Docs](https://developer.mozilla.org/en-US/docs/Learn/CSS/Introduction_to_CSS/Combinators_and_multiple_selectors).

----
Thanks for checking out this post, should you have any thoughts or additional opinions on the different types of CSS selectors kindly share in the comment section.
👍  , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
properties (23)
authorgotgame
permlinkcss-selectors-how-they-work-and-types-of-css-selectors
categorytechnology
json_metadata{"community":"busy","app":"busy/2.4.0","format":"markdown","links":["https://developer.mozilla.org/en-US/docs/Learn/CSS/Introduction_to_CSS/Combinators_and_multiple_selectors"],"tags":["technology","html","css","tech","busy"]}
created2018-06-04 23:44:15
last_update2018-06-04 23:44:15
depth0
children0
last_payout2018-06-11 23:44:15
cashout_time1969-12-31 23:59:59
total_payout_value0.195 HBD
curator_payout_value0.006 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length4,186
author_reputation23,969,707,386,372
root_title"CSS Selectors: How they work and Types of CSS Selectors"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id59,283,800
net_rshares60,010,003,843
author_curate_reward""
vote details (61)