UWAGA: @ Johna-yin za odpowiedź jest bardziej odpowiednie biorąc pod uwagę zmiany w specyfikacji.
Tak. Istnieje różnica między src i href i nie można ich używać zamiennie. Używamy src do zastępowanych elementów, a href do ustanawiania relacji między dokumentem odniesienia a zasobem zewnętrznym.
Atrybut href (odniesienie hipertekstowe) określa lokalizację zasobu internetowego, definiując w ten sposób łącze lub relację między bieżącym elementem (w przypadku kotwicy a
) lub bieżącym dokumentem (w przypadku link
) a docelową kotwicą lub zasobem zdefiniowanym przez ten atrybut. Kiedy piszemy:
<link href="style.css" rel="stylesheet" />
Przeglądarka rozumie, że ten zasób to arkusz stylów, a plik przetwarzanieanalizowanie strony nie jest wstrzymane (renderowanie może zostać wstrzymane, ponieważ przeglądarka potrzebuje reguł stylu do malowania i renderowania strony). Nie jest to podobne do zrzucania zawartości pliku css wewnątrz style
tagu. (Dlatego zaleca się używanie link
zamiast @import
dołączania arkuszy stylów do dokumentu HTML).
src (Source) po prostu osadza zasób w bieżącym dokumencie w miejscu definicji elementu. Np. Gdy przeglądarka znajdzie
<script src="script.js"></script>
Ładowanie i przetwarzanie strony zostaje wstrzymane do czasu, gdy przeglądarka pobierze, skompiluje i uruchomi plik. Jest to podobne do zrzucania zawartości pliku js wewnątrz script
tagu. Podobnie jest z img
tagiem. Jest to pusty tag, a treść, która ma się w nim znaleźć, jest definiowana przez src
atrybut. Przeglądarka wstrzymuje ładowanie do czasu pobrania i załadowania obrazu. [tak jest w przypadku iframe
]
To jest powód, dla którego wskazane jest ładowanie wszystkich plików JavaScript na dole (przed </body>
tagiem)
aktualizacja : zapoznaj się z odpowiedzią @ John-Yin, aby uzyskać więcej informacji na temat sposobu implementacji zgodnie ze specyfikacjami HTML 5.