Today I tried to check my site using Google PageSpeed Insights and in it's recommendations was: "Eliminate render-blocking CSS in above-the-fold content". As I understand it's better to include all CSS for top part of the page (for example in <head> tag) and then include styles for other content later on the page. In docs for this recommendation was this example construction:
<html>
  <head>
    <style>
      .blue{color:blue;}
    </style>
    </head>
  <body>
    <div class="blue">
      Hello, world!
    </div>
  </body>
</html>
<link rel="stylesheet" href="small.css">
But the problem is that HTML W3 validator throws and error ("Stray start tag link") the same is when I'm trying to include <link> inside <body> tags. So the question is: What's the better way to include CSS into the page (is it normal to use recommended construction or no)?