Come ben descritto dalle guide sui CSS, ci sono vari modi per inserire fogli di stile:
Esterni: <link ... />
Esterni: <style>@import ...</style>
Interni: <style> ... </style>
Embedded: <tag ... style="..." />

Dal punto di vista sintattico sono tutti validi; dal punto di vista semantico queli esterni sono da preferire.

Pero` in qualche caso i CSS embedded sono molto comodi, ed anche semanticamente corretti; ad esempio:
<input style="visibility: hidden">

Invece gli esempi da te riportati mi lasciano perplesso (forse non sono applicati nel modo corretto).