Лучшие практики: CSS или темы в ASP.NET? - PullRequest
14 голосов
/ 02 февраля 2009

Когда я должен использовать темы ASP.NET, и когда я должен использовать CSS? Каковы преимущества или недостатки использования одного над другим?

Ответы [ 7 ]

15 голосов
/ 02 февраля 2009

Я бы рекомендовал использовать CSS поверх тем. Причина в том, что в CSS вы можете изменить свои стили, чтобы они работали со всеми браузерами. Вы можете сделать то же самое с темами, но разработчик Microsoft известен тем, что исправляет исправленные вами вещи, чтобы они работали во всех браузерах, чтобы это было непродуктивно. Придерживайтесь CSS, вы будете тратить меньше времени на хулиганство.

9 голосов
/ 02 февраля 2009

Лучше вместе!

Но темы не являются заменой CSS или не созданы для эквивалентной цели CSS. Его цель - определить различные темы в вашем приложении и изменить их одной строкой. Темы могут включать файлы CSS, файлы изображений и скины.

С помощью скинов вы можете определять стили для элементов управления asp.net, поэтому оно включает в себя комплексное и полное решение. Например, вы можете определить вид сетки и определить его стиль и атрибуты. Вы можете определить это для всего приложения.

Значит, вы, я думаю, лучше вместе, но не равнозначно сравнению.

2 голосов
/ 05 августа 2009

Если вы планируете нанять внешнее дизайнерское агентство или дизайнера, вам гораздо лучше с CSS, так как CSS им хорошо известен - поскольку темы гораздо больше ориентированы на разработчиков / VS

1 голос
/ 06 августа 2009

Вы должны объединить их. Используйте ваши CSS-файлы в папке темы для обычного оформления всех HTML-элементов на вашем сайте (включая все сгенерированные элементы).

В файле скина элемента управления вы можете установить класс css по умолчанию. Другие свойства, такие как расположение и поведение элементов по умолчанию (пример: элемент управления календарем), также доступны для редактирования.

Файлы скинов хороши для любой конфигурации макета, которую вы не можете легко сделать с помощью CSS, но со свойствами .net элементов управления.

1 голос
/ 02 февраля 2009

Как уже упоминалось, они не являются взаимоисключающими. Мне довелось иметь несколько тем, которые сами по себе содержат свой набор файлов CSS / Media / Skin, которые соответствуют конфигурации сайта.

1 голос
/ 02 февраля 2009

Темы очень полезны, если вы используете членство, профили и персонализацию. Кроме этого да, Visual Studio Designer печально известен. Вам следует широко использовать CSS, если вы имеете в виду совместимость браузера.

0 голосов
/ 30 октября 2012

Ну, я бы порекомендовал использовать оба вместе, я использую тему, чтобы установить классы CSS для элементов управления, а затем стилизовать их в файлах CSS. Пример:

Кожа:

<asp:CompareValidator runat="server" Text="*" CssClass="Validator" Display="Dynamic" />
<asp:RangeValidator runat="server" Text="*" CssClass="Validator" Display="Dynamic" />
<asp:CustomValidator runat="server" Text="*" CssClass="Validator" Display="Dynamic" />
<asp:RegularExpressionValidator runat="server" Text="*" CssClass="Validator" Display="Dynamic" />
<asp:RequiredFieldValidator runat="server" Text="*" CssClass="Validator" Display="Dynamic" />
<asp:ValidationSummary runat="server" CssClass="ValidationSummary" />

Css:

.Validator
{
    color: Red;   
}

.ValidationSummary
{
    font-size: 0.8em;
}

.ValidationSummary > ul
{
    list-style-type: disc;
    padding: 0 0 0 15px; 
    margin: 0;
}

.ValidationSummary > ul > li
{
    padding: 0;
    margin: 0;
    color: Red;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...