Margin vs. Padding
Margin is on the outside of block elements while padding is on the inside. Use margin to separate the block from things outside it. Use padding to move the contents away from the edges of the block. Enter image description here:
When elements needs space between them, better to use margins. When text or an inner element needs space between the parent box and itself go for paddings.
Width & Height
When you set the width and height properties of an element with css, you just set the width and height of the content area. To calculate the full size of an element, you must also add the padding, borders and margins.
/* It will only have effect on the link in this page */
#this-page a:hover {
...
}
nth-child
You can actually select any child of an element after the first child with the pseudo-class selector nth-child; you just add the child's number in parentheses after the pseudo-class selector. For example,
p:nth-child(2) {
color: red;
}
would turn every paragraph that is the second child of its parent element red. The element that is the child goes before :nth-child; its parent element is the element that contains it.