Zrozumienie atrybutu serwera runat

Jestem naprawdę nowy w ASP.NET. Właśnie sprawdzałem domyślną aplikację internetową ASP.NET. Domyślnie zawiera kilka stron (Default.aspx, About.aspx itp.).

Zauważyłem, że plik Site.master to plik, w którym tworzę główny układ moich stron. Ale zauważyłem również, żehead tag marunat="server" atrybut.

Wiem, że ten tag jest używany w<asp:XXX> tagi, ale dlaczego w<head> etykietka???

Ponadto po usunięciu tego atrybutu wszystkie style znikną ze strony internetowej. Więc najwyraźniej coś robi. Po prostu nie rozumiem, co dokładnie robi ...

Dlaczego tak jest w tagu HTML ... ??? Nie widzę tam żadnego kodu, który powinien zostać uruchomiony na serwerze ...

<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>

questionAnswers(4)

yourAnswerToTheQuestion