Зачем веб-формам ASP.NET нужен атрибут Runat = «Server»?

Почему я должен указывать runat="server"на всех моих элементах управления ASP.NET, когда это обязательный атрибут и serverявляется единственным вариантом, доступным в моих ограниченных знаниях ASP.NET, и я получаю сообщение об ошибке, если я его не использую? Я понимаю, что могу по желанию...