title: What is the difference between using `text-align:center` and `margin: 0 auto` to center an element in CSS?
body: <p>I have read in a lot of places to center elements (a div for example) using <code>margin:0 auto</code>.<br>
  but why not use <code>align:center</code>?
  I think it seems more natural to use the later.</p>
  
  <p>Also, can we use <code>margin</code> approach to set vertical alignment too?  </p>