Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » Drupal »

Exactamente para que sirve Conditional Stylesheets

Estas en el tema de Exactamente para que sirve Conditional Stylesheets en el foro de Drupal en Foros del Web. Buenas, llevo toda la tarde documentándome un poco en el desarrollo de temas para Drupal, y me tope con Conditional Stylesheets que según entiendo es ...
  #1 (permalink)  
Antiguo 29/10/2011, 10:47
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 9 meses
Puntos: 8
Exactamente para que sirve Conditional Stylesheets

Buenas, llevo toda la tarde documentándome un poco en el desarrollo de temas para Drupal, y me tope con Conditional Stylesheets que según entiendo es para una vez activado poder añadir condicionales que cargaran CSS específicos para determinados navegadores (sobre todo IExplorer ) en mis archivos .info de mis themes, hasta ahí bien.

Pero lo que no entiendo es su utilidad, ¿como puedo saber yo si el cliente que accede a mi sitio tiene o no activado dicho módulo?; algo se me escapa porque no consigo entender del todo este módulo para que sirve.

Un saludo y gracias de antemano.
__________________
Videotutoriales de Drupal
  #2 (permalink)  
Antiguo 29/10/2011, 11:23
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 14 años, 5 meses
Puntos: 265
Respuesta: Exactamente para que sirve Conditional Stylesheets

Partiendo de la base que Internet explorer siempre da problemas en temas relacionados a Maquetacion, entonces Drupal te ofrece facilidades para poder poner css adicional que solo reconozca Internet explorer (o una version en particular de IE), y asi solucionar tus problemas de maquetación.

Vos tenes varias maneras de saber desde que navegador se conecta un usuario, pero lo que te interesa en realidad es, como dije antes, mostrar cierto codigo css (o fichero css) dependiendo del navegador desde el que se conecta.

El modulo te da el siguiente ejemplo, que es bastante practico:

Código HTML:
<!--[if lt IE 7]>
  <link type="text/css" rel="stylesheet" media="all" href="ie6-and-below.css" />
<![endif]-->
<!--[if IE 9]>
  <link type="text/css" rel="stylesheet" media="all" href="ie9.css" />
<![endif]-->
<!--[if IE]>
  <link type="text/css" rel="stylesheet" media="print" href="ie-print.css" />
<![endif]--> 
Los condicionales los reconoce solo el navegador, y vos no tenes que preocuparte de nada, solo sabras que si el usuario se conecta desde IE 7, cargara desde la web el fichero ie6-and-below.css, si se conecta desde IE 9, el fichero ie9.css, y si se conecta desde IE (sin tener en cuenta que version es, cargara ie-print.css.
Esta claro que si se conecta desde cualquier otro navegador, ninguna condicion se cumplira, por lo que no se cargara ningun fichero.

Espero que te haya servido.

Saludos.
  #3 (permalink)  
Antiguo 29/10/2011, 11:28
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 4 meses
Puntos: 890
Respuesta: Exactamente para que sirve Conditional Stylesheets

En realidad solo carga los condicionales que le indiques en tu THEME.info no hace distincion si entra por IE o firefox, solo te imprime los condicionales que le pidas. Y lo de la condicion ya es propio de IE que hace el trabajo de cargar el fichero. Un poco intutil para mi, ya que lo mismo lo puedo hacer desde el propio *.tpl
__________________
Drupal Argentina
  #4 (permalink)  
Antiguo 29/10/2011, 12:17
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 9 meses
Puntos: 8
Respuesta: Exactamente para que sirve Conditional Stylesheets

Cita:
Iniciado por NUCKLEAR Ver Mensaje
En realidad solo carga los condicionales que le indiques en tu THEME.info no hace distincion si entra por IE o firefox, solo te imprime los condicionales que le pidas. Y lo de la condicion ya es propio de IE que hace el trabajo de cargar el fichero. Un poco intutil para mi, ya que lo mismo lo puedo hacer desde el propio *.tpl
Ok, gracias pero creo que no me he explicado bien. Entiendo que es lo que hace el módulo ,pero no entiendo como podemos suponer al hacer un theme que la personas que se instale dicho theme tenga instalado el módulo Conditional Stylesheets. Además de esto he instalado el theme ZEND, y en uno de sus archivos info tiene esto:

Código:
  ; Set the conditional stylesheets that are processed by IE.
conditional-stylesheets[if IE][all][]       = css/ie.css
conditional-stylesheets[if lte IE 6][all][] = css/ie6.css
Y comprobando en el código fuente del navegador SIN HABER INSTALADO Conditional Stylesheets me encuentro que ha cargado dichos condicionales:
Código:
<!--[if IE]><link type="text/css" rel="stylesheet" media="all" href="/drupal6/sites/all/themes/zen/zen-internals/css/ie.css?6" /><![endif]-->
<!--[if lte IE 6]><link type="text/css" rel="stylesheet" media="all" href="/drupal6/sites/all/themes/zen/zen-internals/css/ie6.css?6" /><![endif]-->
¿Entonces para que sirve Conditional Stylesheets?, lo digo poque carga los condicionales que están en el archivo .info sin necesidad de dicho módulo.

Mil gracias.
__________________
Videotutoriales de Drupal
  #5 (permalink)  
Antiguo 29/10/2011, 14:20
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 4 meses
Puntos: 890
Respuesta: Exactamente para que sirve Conditional Stylesheets

Si te tomaras un para de minutos en curiosear dentro del theme para ver "que hace la magia", te darias cuenta de que esta ya incluido el modulo(Aunque no como tal), ademas en la pagina del modulo esta muy claro:

What themes make use of the Conditional Stylesheets module?

The following themes have conditional stylesheets included their .info file and make use of the functionality of this module.
Zen
Layout Studio
Tendu
Hopefully more to come…

But all themes should be compatible with this module if you manually add lines to their .info file.

PD: El theme se llama ZEN no Zend.
__________________
Drupal Argentina
  #6 (permalink)  
Antiguo 29/10/2011, 16:09
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 9 meses
Puntos: 8
Respuesta: Exactamente para que sirve Conditional Stylesheets

Cita:
Iniciado por NUCKLEAR Ver Mensaje
Si te tomaras un para de minutos en curiosear dentro del theme para ver "que hace la magia", te darias cuenta de que esta ya incluido el modulo(Aunque no como tal), ademas en la pagina del modulo esta muy claro:

What themes make use of the Conditional Stylesheets module?

The following themes have conditional stylesheets included their .info file and make use of the functionality of this module.
Zen
Layout Studio
Tendu
Hopefully more to come…

But all themes should be compatible with this module if you manually add lines to their .info file.

PD: El theme se llama ZEN no Zend.
Buenas, haber si me he leído todo lo que había en la "página del módulo" , y cuando digo todo es todo, además no solo me he leído esto sino que he visto un videotutorial de Lynda.com donde se explica dicho módulo. Pero quizás no lo haya entendido del todo bien (mi inglés no es perfecto ni mucho menos). Lo que yo había entendido es que esos themes (zend,Tendu etc etc..) necesitaban tener el módulo Conditional Stylesheets para poder insertar los condicionales en sus archivos .info; no pensaba que ya viniera el módulo insertado dentro de los themes; en fin esto me parece un tanto lioso y ni siquiera se si lo entiendo a estas alturas bien del todo.

Según leo tus explicaciones deduzco que el resto de los temas que creemos pueden llevar estos "condicionales" en sus archivos .info, pero necesitan que el módulo Conditional Stylesheets esté activo. Si esto es así mi pregunta inicial sigue sin respuesta , ¿como puedo controlar que el que instale Drupal y luego se descargue mi theme tenga el módulo Conditional Stylesheets instalado?.

Perdón si soy pesado, pero sigo sin entender del todo esto; y me da la sensación que no debe ser tan complicado de explicar a alguien que lo haya utilizado y entiendo su funcionamiento.

Un saludo
__________________
Videotutoriales de Drupal
  #7 (permalink)  
Antiguo 30/10/2011, 02:02
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 14 años, 5 meses
Puntos: 265
Respuesta: Exactamente para que sirve Conditional Stylesheets

No es que seas pesado, es que parece que de verdad no lees las cosas jaja, es la segunda vez que pones ZEND, y ZEND es un framework de PHP, no leiste que te puso Nucklear que se llama ZEN? jaja

Parti de la base en que existen condicionales que podes poner en tu codigo html para que se inserte codigo dependiendo del navegador que estas usando. Esto te sirve para IE y sus problemas a la hora de maquetar.
Ese modulo te permite meter las condiciones en el .info, de una manera mas "bonita", y luego el modulo te añade esos condicionales que yo te puse en mi primer post.
Fijate lo que dice el modulo:

Cita:
Without this module, the only way to have IE conditional stylesheets was to add 35 lines of code (more if you want to add more than one stylesheet) in four horribly-difficult-to-remember function calls to your theme's template.php.
Sin este modulo, la unica manera de agregar los condicionales de IE es poniendo 35 lineas mas de codigo, ellos se basan en eso para darle utilidad al modulo. Las lineas de codigo las tenes que agregar igual, solo que con ese modulo vos las agregas en el .info, de otro modo lo tendrias que hacer en el template.php (o page.tpl.php si sos mas directo).

Cualquier theme que no sea zen, layout studio o tendu, no van a tener este modulo instalado, osea que lo vas a tener que descargar vos, instalarlo y poner su funcionalidad en el .info. Yo de mi parte no uso Zen, uso Genesis, entonces si quisiera usar el modulo deberia instalarlo y poner todo en el .info.
Es un poco feo, porque, respondiendo a tu pregunta, el que se descargue tu theme tiene que tener ese modulo instalado, porque si no va a tener algunos problemitas a la hora de ver el drupal en IE.

Comentamos que es lo que no entendes ahora, pero te recomiendo que si no entendes ingles, partas desde meterte a la escuela oficial de idiomas, que es bueno y barato (no te lo tomes a mal, pero la ambicion tiene que estar por delante de todo).

Saludos.
  #8 (permalink)  
Antiguo 30/10/2011, 03:25
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 9 meses
Puntos: 8
Respuesta: Exactamente para que sirve Conditional Stylesheets

Cita:
Iniciado por MarioAraque Ver Mensaje
No es que seas pesado, es que parece que de verdad no lees las cosas jaja, es la segunda vez que pones ZEND, y ZEND es un framework de PHP, no leiste que te puso Nucklear que se llama ZEN? jaja

Comentamos que es lo que no entendes ahora, pero te recomiendo que si no entendes ingles, partas desde meterte a la escuela oficial de idiomas, que es bueno y barato (no te lo tomes a mal, pero la ambicion tiene que estar por delante de todo).

Saludos.
Bueno primeramente gracias por tus explicaciones ,veo que no era tan dificil. Primeramente comentarte que había entendido todo a la primera , por lo cual descarto utilizar dicho módulo en mis themes porque YO NO PUEDO CONTROLAR lo que los usuarios que instalen Drupal hagan, ya que si no instalan dicho módulo no se cargarían mis css para los navegadores que determine en los condicionales.
Sobre el ingles , llevo mucho tiempo siguiendo cursos (llulabot, lynda.com etc etc..) en dicho idioma y hasta la fecha no he tenido ningún problema, lo que pasa es que pensaba que no lo había entendido bien porque me parece absurdo depender de un módulo para que un theme funcione bien en un navegador determinado; ya que tienes que dar por hecho que la gente se instale el módulo Conditional Stylesheets y eso no me parece buena idea.

Sobre lo de Zend y no Zen , ha sido simplemente una errata (:.

Gracias
__________________
Videotutoriales de Drupal
  #9 (permalink)  
Antiguo 30/10/2011, 06:16
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 14 años, 5 meses
Puntos: 265
Respuesta: Exactamente para que sirve Conditional Stylesheets

Creo que estas confundiendo las cosas.
Los usuarios no tienen que tener instalado ese modulo para ver correctamente el sitio web, simplemente que si vos le pasas a alguien la carpeta de tu theme para que lo instale en su drupal, tendra que tener instalado ese modulo para su correcto funcionamiento. Es un caso simple de dependencia, asi como el pathauto depende de token y panels depende de ctools.

Estamos hablando en terminos de desarrollo, el usuario que entre a tu web no va a necesitar nada.

Saludos.
  #10 (permalink)  
Antiguo 30/10/2011, 06:25
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 9 meses
Puntos: 8
Respuesta: Exactamente para que sirve Conditional Stylesheets

Cita:
Iniciado por MarioAraque Ver Mensaje
Estamos hablando en terminos de desarrollo, el usuario que entre a tu web no va a necesitar nada.
Eso ya lo se hombre, esta claro. Pero aún así es necesario que el que INSTALA drupal (a ese me refiería, no al visitante) ya sea en local o en inet TIENE que tener el MÓDULO Instalado, pienso que cuantas menos dependencias tenga que tener un theme mejor; y menos para una cosa tan insignificante como añadir unas líneas el html del theme para añadir los condicionales por ejemplo para IE.

Un saludo y gracias
__________________
Videotutoriales de Drupal
  #11 (permalink)  
Antiguo 30/10/2011, 07:44
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 4 meses
Puntos: 890
Respuesta: Exactamente para que sirve Conditional Stylesheets

Por que no haces algo mas fácil y dejas de dar tantas vueltas:
Pon directamente los condicionales en tu *.tpl y listo.

No te hagas lio por estas cosas, ya va a haber tiempo para renegar en serio y tirarte de los pelos.

Saludos.
__________________
Drupal Argentina
  #12 (permalink)  
Antiguo 30/10/2011, 08:14
Avatar de Dundee  
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 21 años, 9 meses
Puntos: 8
Respuesta: Exactamente para que sirve Conditional Stylesheets

Cita:
Iniciado por NUCKLEAR Ver Mensaje
Por que no haces algo mas fácil y dejas de dar tantas vueltas:
Pon directamente los condicionales en tu *.tpl y listo.

No te hagas lio por estas cosas, ya va a haber tiempo para renegar en serio y tirarte de los pelos.

Saludos.
Ok tienes razón, me he liado con una cosa bastante tonta.
GRACIAS
__________________
Videotutoriales de Drupal
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:46.