User281315223 posted
Setting the runat="server" attribute on any particular elements simply allows you to perform server-side operations on them and access them from your code-behind. It doesn't necessarily mean that it is going to be entirely run at the server and shouldn't
be required in most cases.
For example, if you were to add an ID attribute to your <head> element, you would be able to access it from your code-behind (or server-side code) using something like :
<head id="HeadContent" runat="server">
<title>Single-File Web Form</title>
</head>
This would allow you to use "HeadContent" within your code-behind and perform any specific operations that you needed to do on it.