Бритва mvc3, CSS в помощнике - PullRequest
0 голосов
/ 12 марта 2012

В проекте бритвы mvc 3 у меня есть помощник, который создает компонент.Я могу использовать этот помощник для создания на одной странице столько компонентов, сколько мне нужно.

У меня есть разные папки, содержащие файлы CSS и их изображения.

Могу ли я указать стиль CSS для каждого компонентаот помощника?

т.е. @html.MyComponent(100, 200, "pink") будет использовать style.css в розовой папке.

Ps: я не использую html5, ни css3

Ответы [ 3 ]

1 голос
/ 12 марта 2012

Если бы вы использовали классы вместо файлов, это было бы намного проще. Я бы просто использовал разные стили для тем. Вы должны посмотреть на этот вопрос: ASP.NET MVC 3, как правильно делать темы

0 голосов
/ 12 марта 2012

Если вы настроены на это таким образом - тогда

  1. Вам нужно выбрать файл CSS вверху для розового
  2. В загрузку необходимо включить все таблицы стилей.
  3. Вам необходимо динамически включать таблицы стилей по запросу MyComponent. Это сложно, так как вы можете в конечном итоге удвоить их. Вы можете сделать это через ActionFilter, чтобы в конце выписать теги css, но это хак, и я бы не советовал.

Придерживайтесь соглашения и ваши стили должны быть запрошены вверху, поэтому вам нужно знать, какие стили вы используете на странице. Ваши компоненты не должны заботиться о загрузке таблицы стилей, она уже должна быть загружена, что означает, что вы должны принять это решение вверху страницы. Поскольку вы уже должны «знать» имена на данный момент (розовый и т. Д.), Вы можете легко написать код вверху для запроса этих файлов с помощью простого


<LINK href="@string.Format("/{0}/style.css",YourStyleSheetnameIePinkInThisExample)" rel="stylesheet" type="text/css">

0 голосов
/ 12 марта 2012

ASP.NET MVC 3 Razor: включить файл JavaScript в тег head

Я думаю, что то же самое можно применить, но я не знаю, можете ли вы сделать это из помощника.

...