Aplicar estilos css a controles de asp net
usar css en asp net c#
Me he dado cuenta de que cuando intento aplicar el atributo ‘style’ a un control asp:TextBox, por ejemplo, o cuando intento utilizar una clase css para aplicar un estilo, no lo hace. Tengo que poner específicamente el atributo. Por ejemplo:
Tu segundo ejemplo con CssClass debería funcionar, pero en lugar de depurar mirando tu aspx realmente necesitas revisar el HTML (usando la versión de tus navegadores de las herramientas para desarrolladores como Firebug te mostrará qué estilos se están aplicando).
Recuerda que no hay un control TextBox real en HTML así que a menos que te dé la propiedad (como hace asp.net) debes tener esa CssClass que usaste. Además, si estás usando el formato en tu ejemplo tal cual para comparar es donde está tu problema. Mira mi segundo bloque de código para saber dónde debería estar el estilo.
uso de css en asp net
Puede controlar el aspecto de los controles del servidor ASP.NET estableciendo varias propiedades de apariencia como ForeColor, BackColor, Height y Width. Además, algunos controles admiten objetos de estilo que exponen ajustes adicionales relacionados con el estilo.
Las páginas web ASP.NET funcionan como páginas HTML en tiempo de ejecución. Por lo tanto, puede utilizar hojas de estilo en cascada (CSS) para establecer la apariencia de cualquier elemento de la página que no sean los controles del servidor web. Además, puede definir temas ASP.NET que incluyan configuraciones de hojas de estilo en cascada y, a continuación, aplicar los temas a las páginas o a su sitio. Para obtener más información, consulte Temas y skins de ASP.NET.
Cuando la página se ejecuta, las propiedades de la apariencia se muestran de acuerdo con las capacidades del navegador del usuario. Si el navegador del usuario admite hojas de estilo en cascada (CSS), las propiedades de apariencia se muestran como atributos de estilo de los elementos HTML que componen el control. Por ejemplo, si se define un control del servidor web HyperLink y se establece su propiedad ForeColor en rojo, su propiedad Bold en true y su propiedad Size en xx-small, el control se renderiza de la siguiente manera si el navegador del usuario soporta hojas de estilo:
estilo asp:textbox
Puede controlar el aspecto de los controles del servidor ASP.NET estableciendo varias propiedades de apariencia como ForeColor, BackColor, Height y Width. Además, algunos controles soportan objetos de estilo que exponen ajustes adicionales relacionados con el estilo.
Las páginas web ASP.NET funcionan como páginas HTML en tiempo de ejecución. Por lo tanto, puede utilizar hojas de estilo en cascada (CSS) para establecer la apariencia de cualquier elemento de la página que no sean los controles del servidor web. Además, puede definir temas ASP.NET que incluyan configuraciones de hojas de estilo en cascada y, a continuación, aplicar los temas a las páginas o a su sitio. Para obtener más información, consulte Temas y skins de ASP.NET.
Cuando la página se ejecuta, las propiedades de la apariencia se muestran de acuerdo con las capacidades del navegador del usuario. Si el navegador del usuario admite hojas de estilo en cascada (CSS), las propiedades de apariencia se muestran como atributos de estilo de los elementos HTML que componen el control. Por ejemplo, si se define un control del servidor web HyperLink y se establece su propiedad ForeColor en rojo, su propiedad Bold en true y su propiedad Size en xx-small, el control se renderiza de la siguiente manera si el navegador del usuario soporta hojas de estilo:
asp net themes
Getting your custom control to behave the way you want it to is only half the work. Once you get to the visual side of things you have to create the logic that generates the actual HTML shown in the browser. If you want the control to display properly, this can be a tedious task, especially if you want it to render properly in different browsers.
You may have noticed that the HTML rendered with Listing 1 and Listing 2 is HTML 3.2 without CSS styles. My samples use a <font> tag to change the font color. Although this works, it is considered better practice these days to use CSS. You could, of course, write style tags yourself, but again there’s a method that can help you: WriteStyleAttribute. This method write the values for the Style attribute, so in order to add styles to a tag, you actually still have to write the attribute itself, as shown in Listing 3. This latest listing renders the HTML below, which is equivalent to the HTML 3.2 shown earlier (for browsers supporting CSS).
The next step is differentiating between different browsers, so you can actually create different HTML for different browsers. To check the type of the requesting browser you can use the HttpBrowserCapabilities object. This object, accessible through Page.Request.Browser, contains all sorts of properties about the client browser. Puedes comprobar el nombre y la versión del navegador, si soporta frames, tablas, Java-applets, etc. Extrañamente está ausente de esta lista si el navegador soporta o no CSS (y si es así qué versión), aunque esa información está almacenada en machine.config donde se listan todas las capacidades del navegador. Para evitar esto tienes dos opciones, cada una igualmente indeseable. La primera es usar tu propio conocimiento de los navegadores para decidir si debes o no usar CSS, por ejemplo: