Question: Where is it best to declare the `font-family` CSS property? On the `html` or `body` element?

```
html {
    font-family: sans-serif;
}

```

or

```
body {
    font-family: sans-serif;
}

```

I searched online, but I cant find a definitive answer.

Answer: 
The `*` selector will give you better coverage. For example, `form` elements, like `input`, don't inherit font styles from `html` and `body` tags. But if you set it with `*` then you'll make sure your font styles pass down to all HTML elements.

```
* {
  font-family: 'Open Sans', Helvetica, sans-serif;
}

```

Here's a demo. Using [\* selector](http://jsfiddle.net/VolkerShmuley/gpkzhec4/2/) vs [html and body](http://jsfiddle.net/VolkerShmuley/1t7fg20x/2/).
for change font-family for your site, you can use this :

```
*{
   font-family:"your-font-family";
}

```

or this :

```
html, body, div, span, applet, object, iframe, table, caption, tbody, tfoot, thead, tr, th, td,
del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var,
h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend {
  font-family: iransans !important;
}

```