Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Bad consequences of linking css external stylesheet outside of head? [duplicate]

So first off, I know that the <link> tag to link a CSS external style sheet should be in the <head> section, and that it is very unorthodox to place it outside the head.

However, I am using head and footer includes for modular web design, and there are some CSS stylesheets which apply to certain pages and not others.

Having placed some <link> tags within the <body> section of a certain page, thanks to the sweet accommodation of modern browsers I have so far experienced nothing wrong except in IE.... but, personally I don't care too much about IE at the moment.

So, apologies to the HTML purists, but I must ask: what negative consequences are there for linking CSS external stylesheets outside of <head>?

In my research, people have usually just stuck to referencing w3schools as stating "link your CSS stylesheet in the head", but not elaborating too much on why: Do <link href=""> tags only go in the <head> tag?

"Validity" is given as one answer, but what does that entail? Search engine friendliness? I don't see any benefit to me if search engines read my stylesheets or not...

like image 718
LazerSharks Avatar asked Jul 22 '13 06:07

LazerSharks


1 Answers

Quoted from the HTML 4.01 Specification

This element defines a link. Unlike A, it may only appear in the HEAD section of a document, although it may appear any number of times.

The HTML5 specification however does not mention the tag must appear in the HEAD section. So if you use them inside the body make sure you use the HTML5 DOCTYPE e.g.

<!DOCTYPE html>

The HTML5 specification states the following.

A link element must have a rel attribute.

And also

Note

If the rel attribute is used, the element is restricted to the head element.

like image 169
Bart Avatar answered Sep 23 '22 15:09

Bart