Separation of content and presentation makes sense both theoretically and practically. In theory, the mixture of the two is conceptually chaotic. In practice it results in the use of structural elements, such as the code for tables, to achieve placement of page elements, in other words, design. You can design handsome pages using tables, but their code is difficult to understand and maintain and their code bloat results in pages whose code is much more extensive -- and thus slower to load -- than it should be.
The use of style sheets to control presentation makes sense. It makes the web page author's life easier by enabling global changes to design elements. Isolation of content makes adding or updating things easy while maintaining presentational consistency throughout the site. Separating content and presentation also ensures that the site will look right regardless of the device a used to access it.