READ: Do we need prefixes anymore?
Chris Coiyer's Text Shadow Examples
Chris Coiyer's Fancy Pseudo-Element Shadow Effects
* { margin: 0; padding: 0; }
Add margin:0; and padding:0; to EVERYTHING
#contact * { display: block; }
Add display:block; to everything INSIDE the element with an ID of contact
#exampleList > li { border: 1px solid red; }
Select only li that are a child of #exampleList
h1 + p { font-weight: bold }
Select only adjacent sibling p tags of the h1
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Totam nulla eius quia pariatur voluptates suscipit quisquam molestiae nisi aut vel laudantium accusantium ipsa quaerat natus, nesciunt consectetur repudiandae saepe facere!
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Reiciendis adipisci labore, itaque hic praesentium dolorem consequatur quos deserunt non, sit unde consectetur accusantium et consequuntur assumenda laborum eius dignissimos. Nam?
h1 ~ p { font-weight: bold }
Select only general sibling p tags of the h1
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Totam nulla eius quia pariatur voluptates suscipit quisquam molestiae nisi aut vel laudantium accusantium ipsa quaerat natus, nesciunt consectetur repudiandae saepe facere!
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Reiciendis adipisci labore, itaque hic praesentium dolorem consequatur quos deserunt non, sit unde consectetur accusantium et consequuntur assumenda laborum eius dignissimos. Nam?
CSS Tricks: Child and Sibling Selectors
img[alt] { border: 3px solid red; }
Select every image with an alt attribute
input[type="text"] { border: 3px solid red; }
Select every input with a type attribute of "text"
[attribute^=something]
Will match an attribute that begins with "something".
[attribute$=something]
Will match an attribute that ends with "something".
[attribute*=something]
Will match an attribute that contains "something".
a[href^=http] {
padding-right: 10px;
background: url(arrow.png) right no-repeat;
}