CSS is used to declare styling on webpages. Pretty much every website uses it!
Styles are applied in a cascading manner -- the most specific styles will override the less specific ones!
HTML defines the structure and content of our website. HTML tags have different meanings. For example a h1 tag defines a header. We will attach our CSS code to HTML tags using selectors.
Elements are positioned using the top, bottom, left, and right properties. These properties don't work until the position property is set! There are a few different options for positioning, but we will use two today: absolute and relative.
Absolute positioning: We can position our divs on the page relative to their parent elements using absolute positioning! The "sibling" absolutely positioned divs ignore each other, so they can overlap. We will be using absolute positioning for most of our art!
Relative positioning: We can position our divs on the page relative to that div's default position using relative positioning. Remember, divs by default will stack on top of one another!
Those of us whose work is to write software are incredibly lucky. Building software is a guiltless pleasure because we get to use our creative energy to get things done. We have arranged our lives to have it both ways; we can enjoy the pure act of writing code in sure knowledge that the code we write has use. We produce things that matter. We are modern craftspeople, building structures that make up present-day reality, and no less than bricklayers or bridge builders, we take justifiable pride in our accomplishments.
This all programmers share, from the most enthusiastic newbie to the apparently jaded elder, whether working at the lightest weight Internet startup or the most staid, long-entrenched enterprise. We want to do our best work. We want our work to have meaning. We want to have fun along the way.