Grundlegendes zum Runat-Server-Attribut

Ich bin wirklich neu in ASP.NET. Ich habe gerade eine Standard-ASP.NET-Webanwendung ausgecheckt. Es wird standardmäßig mit einigen Seiten geliefert (Default.aspx, About.aspx usw.).

Ich habe festgestellt, dass die Site.master-Datei die Datei ist, in der ich das Hauptlayout für meine Seiten erstelle. Aber mir ist auch aufgefallen, dass diehead Tag hat einerunat="server" Attribut.

Ich weiß, dass dieses Tag in verwendet wird<asp:XXX> Tags, aber warum in a<head> Etikett???

Wenn ich dieses Attribut entferne, werden alle Stile von der Webseite entfernt. Es tut also anscheinend etwas. Ich verstehe einfach nicht, was es genau tut ...

Warum ist es dort auf einem HTML-Tag ... ??? Ich sehe dort keinen Code, der auf dem Server ausgeführt werden sollte ...

<head runat="server">
    <title>Hallo</title>
    <link href="~/Styles/Site.css" rel="stylesheet" type="text/css" />

    <!-- This part is run on the server. So why does the head tag
         also need a runat=server ?? -->
    <asp:ContentPlaceHolder ID="HeadContent" runat="server">
    </asp:ContentPlaceHolder>
</head>

Antworten auf die Frage(4)

Ihre Antwort auf die Frage