У меня есть файл скина, который содержит:
< asp:TextBox runat="server" CssClass="FixedFont"/>
В той же папке, что и файл скина, находится следующий файл css. Файл Css содержит:
.FixedFont
{
font-family:Courier;
}
Наконец, у меня есть страница ASPX, которая содержит следующий элемент управления:
<asp:TextBox ID="TextBox1" runat="server">Test</asp:TextBox>
Когда я просматриваю страницу ASPX в режиме разработки или запускаю страницу, я вижу, что атрибут font-family в стиле влияет на элемент управления textbox, а именно на Courier.
Однако я также хотел бы определить локальный стиль на моей странице ASPX,
.DefaultWidth
{
width: 300px;
}
... и иметь все мои текстовые поля, чтобы они были одинаковой ширины.
Если установить для свойства CssClass TextBox1 значение "DefaultWidth" ...
<asp:textbox ID="TextBox1" CssClass="DefaultWidth">Hello</asp:TextBox>
... ширина текстового поля изменена на 300px, но я теряю эффект скина, применяя фиксированный стиль шрифта Courier.
Чтобы получить оба применяемых эффекта, DefaultWidth и эффект текстового поля с фиксированным шрифтом, я должен установить для свойства CSSClass значение DefaultWidth FixedFont, что, как мне кажется, сводит на нет преимущество наличия скина в первом место. Полагаю, я ожидал, что эффект будет кумулятивным, если только я не добавил стиль, который конфликтовал со скином, и в этом случае я ожидал, что локальный класс будет применен поверх эффекта скина. Например, если бы я применил второй класс, Class2, который также включал спецификацию семейства шрифтов в дополнение к другим эффектам, я ожидал бы, что шрифт, указанный в Class2, переопределит его в стиле FixedFont. Но, похоже, это не то, что здесь происходит.
Как лучше всего справиться с такой ситуацией? Я воображаю, что очень часто хочу иметь ряд текстовых полей, которые все совпадают по ширине, поэтому я думаю, что я очень часто захочу указать CssClass для элемента управления в дополнение к использованию эффектов, примененных к элементу управления в типе в файле обложки.
Является ли решение НЕ использовать CSS в самой SKIN? Похоже, у него есть и недостатки в обслуживании.
Вторичная проблема, с которой я сталкиваюсь, заключается в том, что если я объявлю таблицу стилей со следующим классом ..
.Button
{
background-image: url('/images/button.gif')
}
... и установите для свойства CSSClass кнопки ASP значение «Button», я вижу изображение поверх кнопки.
Однако, если я введу следующий код в файл скина
не находит изображение.
Папка с изображениями - это папка первого уровня вне корневого каталога сайта.
Любая идея, почему она не поднимает изображение. Я пробовал другие пути, но это единственный способ, который, кажется, имеет смысл для меня.
Кстати, изображение применяется в режиме конструктора, но исчезает при запуске.