Controles de servidor ASP.NET y estilos CSS
Se puede controlar la apariencia de los controles estableciendo varias propiedades de apariencia como ForeColor, BackColor, Height y Width. Además, algunos controles admiten objetos de estilo que exponen una configuración relacionada con el estilo adicional.
**Nota **Las páginas de formularios Web Forms (archivos .aspx) funcionan como páginas HTML en tiempo de ejecución. Por tanto, puede utilizar hojas de estilos en cascada (CSS) para establecer la apariencia de los elementos de la página que no sean controles de servidor Web. Para obtener más detalles, vea Aplicar un estilo CSS a otra página Web.
Las siguientes secciones proporcionan información sobre cómo se procesa la información de estilos en el explorador y cómo trabajar con estilos en tiempo de diseño y mediante programación.
Procesamiento de propiedades de apariencia en el explorador
Cuando se ejecuta la página, las propiedades de apariencia se procesan según las capacidades del explorador del usuario. Si el explorador del usuario admite hojas de estilos en cascada (CSS), las propiedades de apariencia se procesan como atributos de estilo de los elementos HTML que componen el control. Por ejemplo, si se crea un control LinkButton de servidor Web y se establece su propiedad ForeColor en Red, su propiedad FontInfo.Bold en true y su propiedad FontInfo.Size en xx-small, y si el explorador del usuario admite hojas de estilo, el control se procesa de la forma siguiente:
<a id="HyperLink1" style="color: Red; font-size: XX-Small; font-weight: bold;">HyperLink</a>
Por otro lado, si el explorador del usuario no admite estilos, el control se procesa por otros medios, como un elemento <FONT>. A continuación se muestra el procesamiento del ejemplo anterior, pero para un explorador que no admite estilos:
<a id="HyperLink1"><b><font color="Red" size="1">HyperLink</font></b></a>
Otros ejemplos de propiedades que se procesan de forma diferente dependiendo del explorador son BorderWidth y BorderColor.
Algunas propiedades de apariencia, como BorderStyle no se puede procesar sin utilizar estilos. Por tanto, estas propiedades se omiten en los exploradores de nivel inferior. Para obtener más información, vea Controles de servidor ASP.NET y funciones del explorador.
Objetos de estilo del control
Además de las propiedades de apariencia simples como ForeColor y BackColor, los controles exponen uno o varios objetos de estilo que encapsulan propiedades de apariencia adicionales. Un ejemplo es la propiedad de estilo Font, que expone un objeto de tipo FontInfo que contiene propiedades individuales correspondientes a la fuente, como Size, Name, Bold, etc.
Algunos controles exponen objetos de estilo que puede utilizar para establecer la apariencia de partes específicas del control. Por ejemplo, el control Calendar de servidor Web contiene objetos de estilo como DayStyle (días individuales), SelectedDayStyle (un día, una semana o un mes seleccionado por el usuario) y WeekendDayStyle. Por ejemplo, al utilizar el objeto de estilo SelectedDayStyle, se pueden establecer las propiedades BackColor y ForeColor del día seleccionado procedimiento el usuario.
La mayor parte de los objetos de estilo son de tipo TableItemStyle, porque establecen los atributos de celdas de tabla. El objeto de estilo Font es de tipo FontStyle.
Prioridad y herencia de los objetos de estilo
En controles complejos, los objetos de estilo a menudo heredan características de otros objetos de estilo. Por ejemplo, en el control Calendar, el objeto SelectedDayStyle se basa en el objeto DayStyle. Si no se establecen explícitamente propiedades para SelectedDayStyle, hereda sus características del objeto DayStyle.
Esta herencia significa que las propiedades del objeto de estilo que ha establecido tienen un orden de prioridad. Por ejemplo, la siguiente lista muestra el orden de las propiedades del objeto de estilo para el control Calendar, con la mayor prioridad dada la configuración del último objeto de la lista.
- Propiedades de apariencia del control Calendar base
- Objeto de estilo DayStyle
- Objeto de estilo WeekendDayStyle
- Objeto de estilo OtherMonthDayStyle
- Objeto de estilo TodayStyle
- Objeto de estilo SelectedDayStyle
Controlar clases y estilos CSS directamente
Además de las propiedades de apariencia y objetos de estilo, los controles exponen dos propiedades que permiten manipular estilos CSS de una forma más directa: CSSStyle y CSSClass. La propiedad CSSClass permite asignar una clase de hoja de estilos al control. La propiedad CSSStyle permite establecer una cadena de atributos de estilo para que se escriba como es en el control. El uso de la propiedad CSSStyle permite establecer atributos de estilo que no se exponen a través de otras propiedades.
La configuración realizada en la propiedad CSSStyle no se refleja en la propiedad de apariencia individual correspondiente. Por ejemplo, si establece una cadena background-color:red
en la propiedad CSSStyle, la propiedad BackColor tampoco se establece en rojo, aunque el control se procese con un fondo rojo. Además, si establece las propiedades de apariencia y la propiedad CSSStyle, las propiedades de apariencia individuales tienen prioridad sobre la propiedad CSSStyle.
Vea también
Programar formularios Web Forms | Personalizar la apariencia de los controles de servidor ASP.NET mediante estilos | Controles de servidor ASP.NET | Controles de servidor ASP.NET y funciones del explorador