--- title: Understanding CSS Casecade author: Garen Ikezian --- What is CSS? ============ It's an imperative language that allows rules for the browser to design a web page. It stands for **C**ascading **S**tyle **S**heets. With CSS, browsers will handle the actual styling of the webpage. The styler only makes styling requests to the browser. The reasoning behind CSS being and imperative and not a procedural language is so that webpages can render consistently and efficiently. It also simplifies the design process and makes it abstract across all different clients. Instead of telling a particular browser how to behave (procedurally), we instead make styling requests and the browsers does the styling for us. What is a cascade? ------------------ The cascade *defines* the rules for which rule should go first. It helps us to keep track which \"style\" will run. ![CSS Casecade](cascade.png) **Cascading** are determined by three factors: ## 1. Stylesheet Origin: Where does the style come from? Is it inline, internal, or external css? (90% of our concerns are in the author style origin) Author styles origin override the browser's default agent styles origin. The agent styles origin is the reason why `