CSS A pattern to select (or find) elements in the DOM A CSS rule has three parts selector declaration block one or more properties with values Basic selectors div { … } select by tag type .foo { … } select by class name #a { … } select by element id attribute [type="text"] { … } select elements matching attribute value Hierarchal selectors div > div { … } select child elements by parent-child relationship div div { … } select child elements by descendant relationship Pseudo class selectors (many more …) :first-child select first child :hover select when mouse is over element Combining selectors div#a { … } select elements matching all selectors div, #a { … } select elements matching at least one selector /* universal selector */ * { background-color: hsl(325, 63%, 82%); text-align: center; } /* type selector */ span { background-color: skyblue; } /* id selector */ #div1 { color: green; text-align: center; font-size: 20px; font-weight: bold; } /* class selector */ .div2 { color: orange; text-align: left; font-size: 10px; font-weight: bold; } /* attribute selector */ div[style] { text-align: center; color: purple; font-size: 20px; font-weight: bold; margin-bottom: -20px; } /* combinator selector */ div>p { color: #009900; font-size: 32px; font-weight: bold; margin: 0px; text-align: center; } /* class selector */ .box { background-color: yellow; width: 300px; height: 100px; margin: auto; font-size: 30px; text-align: center; } /* pseudo selector */ .box:hover { background-color: orange; }