status: #doc Tags: #html #css links: [[html-css]] Date: 2023-08-01 ___ # css selector CSS selectors are used to "find" (or select) the HTML elements you want to style. We can divide CSS selectors into five categories: - Simple selectors (select elements based on name, id, class) - [Combinator selectors](https://www.w3schools.com/css/css_combinators.asp) (select elements based on a specific relationship between them) - [Pseudo-class selectors](https://www.w3schools.com/css/css_pseudo_classes.asp) (select elements based on a certain state) - [Pseudo-elements selectors](https://www.w3schools.com/css/css_pseudo_elements.asp) (select and style a part of an element) - [Attribute selectors](https://www.w3schools.com/css/css_attribute_selectors.asp) (select elements based on an attribute or attribute value) This page will explain the most basic CSS selectors. --- ## The CSS element Selector The element selector selects HTML elements based on the element name. Here, all `

` elements on the page will be center-aligned, with a red text color:  ```css p {  text-align: center;   color: red;}   ``` --- ## The CSS id Selector The id selector uses the id attribute of an HTML element to select a specific element. The id of an element is unique within a page, so the id selector is used to select one unique element! ```css #para1 {  text-align: center;   color: red;} ``` **Note:** An id name cannot start with a number! --- ## The CSS class Selector The class selector selects HTML elements with a specific class attribute. To select elements with a specific class, write a period (.) character, followed by the class name. In this example all HTML elements with class="center" will be red and center-aligned:  ```css .center {  text-align: center;   color: red;} ``` You can also specify that only specific HTML elements should be affected by a class. ```css p.center {  text-align: center;   color: red;} ``` HTML elements can also refer to more than one class. In this example the `

` element will be styled according to class="center" and to class="large":  ```css

This paragraph refers to two classes.

``` **Note:** A class name cannot start with a number! --- ## The CSS Universal Selector The universal selector `(*)` selects all HTML elements on the page. The CSS rule below will affect every HTML element on the page:  ```css * {  text-align: center;   color: blue;} ``` --- ## The CSS Grouping Selector The grouping selector selects all the HTML elements with the same style definitions. the h1, h2, and p elements have the same style definitions: ``` css h1 {  text-align: center;   color: red;} h2 {  text-align: center;   color: red;} p {  text-align: center;   color: red;} ``` we have grouped the selectors from the code above:  ```css h1, h2, p {  text-align: center;   color: red;} ``` --- # References https://www.w3schools.com/css/css_selectors.asp