У меня есть два мастер-листа. Основной.Мастер и поиск.Мастер.Вложенные файлы Masterpages и CSS
Поиск.Мастер - это вложенная главная страница, которая является «внутри» main.Master. Чтобы мои файлы CSS работали с masterpages, мне пришлось поместить атрибут runat = "server". Например:
<link runat="server" href="~/mp/css/master.main.css" rel="stylesheet" type="text/css" />
И работает замечательно на главной странице. Однако эта вложенная главная страница имеет свои собственные стили, поэтому я снова попытался выполнить трюк runat = "server". Я убедился, что мой жерех: содержание было внутри и напечатал:
<link runat="server" href="~/mp/css/master.search.css" rel="stylesheet" type="text/css" />
Однако, когда я проверил исходный код своего веб-сайта, путь показан был:
~/тр/CSS/мастер .search.css
Insetead из
../../mp/css/master.search.css
Кто-нибудь знает, почему это происходит? И как это решить?
PS: Я не хочу использовать <% = ResolveClientUrl («bla bla bla»)%>, потому что он беспорядочен вокруг связи маскарад/темы. И я бы предпочел не вставлять стили CSS в заголовок из кода ServerSide.
я не являюсь разработчиком ASP.NET, но почему вы кладете # RUNAT = «сервер» ??? – tawfekov
Добавление runat = "server" позволяет разрешить ссылку на серверную сторону перед отправкой ее клиенту. – mxmissile
Вы уверены, что знаете, что является целью атрибута «runat = 'server'? – Kamarey