Foros del Web » Programando para Internet » Javascript »

reconocer resolucion de pantalla y redireccionar a css

Estas en el tema de reconocer resolucion de pantalla y redireccionar a css en el foro de Javascript en Foros del Web. Hola buenas,vereis este problema es algo común pero miro y miro y no encuentro,o lo que encuentro no me sirve. quiero segun la resolucion de ...
  #1 (permalink)  
Antiguo 02/04/2013, 15:58
 
Fecha de Ingreso: septiembre-2012
Mensajes: 66
Antigüedad: 12 años, 3 meses
Puntos: 4
Exclamación reconocer resolucion de pantalla y redireccionar a css

Hola buenas,vereis este problema es algo común pero miro y miro y no encuentro,o lo que encuentro no me sirve.

quiero segun la resolucion de pantalla,me abra un css o otro para la pagina.en este caso para todas las pantallas.a resoluciones,800,1024,1280,1400 y 1600.
para ello..por javascript he hecho este codigo..pero no me funciona..

<script language="javascript">

if (screen.width >= 800 && screen.width < 1024)
{
document.write('<link rel="stylesheet" type="text/css" href="800.css" />');
}

if (screen.width >= 1024 && screen.width < 1280)
{
document.write('<link rel="stylesheet" type="text/css" href="1024.css" />');
}

if (screen.width >= 1280 && screen.width < 1400)
{
document.write('<link rel="stylesheet" type="text/css" href="1280.css" />');
}

else
{
}

</script>

esto basicamente es pero añadiendo todas las resoluciones.el problema que tengo es en esta linea :

if (screen.width >= 1280 && screen.width < 1400)

no me coje el && screen.width <1400 osea.la segunda condición.
lo que yo necesito es que sea igual o mayor que 1280 y menor que 1400.pero no lo consigo.y bueno esa linea pero en todas las que cambian los balores me refiero.
alguien tiene idea de como podria hacerlo??

gracias de antemano.

espero una solución.
  #2 (permalink)  
Antiguo 02/04/2013, 17:17
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 16 años, 4 meses
Puntos: 103
Respuesta: reconocer resolucion de pantalla y redireccionar a css

primero que nada, no uses screen.width, usa window.innerWidth !
uno te da el ancho de la pantalla, y l otro de la ventana, pero el que usas es el de la ventana, no el de la pantalla!

mira, hay opciones mejores que cambiar el link a la hoja de estilos, existen las Hojas de estilos adaptables
Código CSS:
Ver original
  1. header {
  2.     width: 900px;
  3.     margin: 0 auto;
  4. }
  5.  
  6. @media screen and (max-width: 900px){
  7.    header {
  8.     width: auto;
  9.    }
  10. }
  11. }

que no requieren Javascript, y ademas, al redimensionar la ventana, se aplican automaticamente !

lee mas aqui http://redticos.net/blog/run/diseno-...ptable-css-med
o buscalo en google

un saludo
  #3 (permalink)  
Antiguo 02/04/2013, 18:02
 
Fecha de Ingreso: septiembre-2012
Mensajes: 66
Antigüedad: 12 años, 3 meses
Puntos: 4
Respuesta: reconocer resolucion de pantalla y redireccionar a css

Muchas graciias!!!!me a servido de mucho!
Por lo que he leido...seria en las clases del css seria simplemente poner despues el @ media y el auto al width o al height.pero porque el auto?es lo unicoo que no entiendo.osea.se adapta solo poniendo el auto?? Ese valor de esa clase??

Muchas gracias de antemano!
  #4 (permalink)  
Antiguo 02/04/2013, 19:44
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 16 años, 4 meses
Puntos: 103
Respuesta: reconocer resolucion de pantalla y redireccionar a css

Cita:
Iniciado por tasmany94 Ver Mensaje
Muchas graciias!!!!me a servido de mucho!
Por lo que he leido...seria en las clases del css seria simplemente poner despues el @ media y el auto al width o al height.pero porque el auto?es lo unicoo que no entiendo.osea.se adapta solo poniendo el auto?? Ese valor de esa clase??

Muchas gracias de antemano!
el valor auto de la propiedad width, significa que obtenga el ancho automaticamente, es decir, que obtenga el mayor ancho posible.

pero esa propiedad solo la estaba aplicando cuando el ancho de la pantalla sea menor a 900px, cuando era mayor, tenia la propiedad de un ancho fijo de 900px y un margen automatico para centrarlo

un saludo
  #5 (permalink)  
Antiguo 03/04/2013, 16:33
 
Fecha de Ingreso: septiembre-2012
Mensajes: 66
Antigüedad: 12 años, 3 meses
Puntos: 4
Respuesta: reconocer resolucion de pantalla y redireccionar a css

vale muchicimas graciias!!

busque informacion y buah gracias por todo!!

ahora el codigo lo e dejado asi : aver si funciona pero en teoria si.

#pagina {
width:1000px;
float:left;
clear:both;
margin-left:20%;
}

@media screen and (max-width:1000px) and (min-width:800) {

#pagina {
width:600px;
}
}

esto en teoria deberia de funcionar no? estoy aciendo todo el codigo pero en teoria esto me diria.. si tiene maximo de 1000px y minimo de 800 entonces..esos estilos cambian. ósea..si esta entre 800 y 1000 px esos estilos...cierto?si esto funciona te ago un monumento hehe
  #6 (permalink)  
Antiguo 03/04/2013, 18:06
Avatar de Carlangueitor
Moderador ლ(ಠ益ಠლ)
 
Fecha de Ingreso: marzo-2008
Ubicación: México
Mensajes: 10.037
Antigüedad: 16 años, 9 meses
Puntos: 1329
Respuesta: reconocer resolucion de pantalla y redireccionar a css

¿Y por qué no lo pruebas? Creo que es más rápido.

Saludos
__________________
Grupo Telegram Docker en Español
  #7 (permalink)  
Antiguo 04/04/2013, 02:15
 
Fecha de Ingreso: septiembre-2012
Mensajes: 66
Antigüedad: 12 años, 3 meses
Puntos: 4
Respuesta: reconocer resolucion de pantalla y redireccionar a css

bueno ya lo probe.pero ahooora el problema..que vamos mas bien es una consulta..

he puesto este codigo:

@media screen and (max-width:1001px) {

.pagina {
float:left;
clear:both;
margin-left:20%;
width:500px;
height:600px;
background-color:#0099FF;
}
}

@media screen and (max-width: 1200px) and (min-width: 1001px) {
.pagina {
width:900px;
background-color:#FF00FF;
}
}

pero la cuestion de esto,en la resolucion segunda..osea..entre 1001 y 1200,

se me queda el estilo solo el de:
.pagina {
width:900px;
background-color:#FF00FF;
}

me imagino que sera por el primero @media screen and (max-width: 1001px),

osea.primero debo poner los estilos y luego los @media, pero el estilo por defecto tiene que estar.la cuestion es,que tamaño se pone de defecto,y cuando volvera a el?

por lo que tengo entendido, si pongo el de defecto a 800x600 y con @media pongo para las demas resoluciones, se ajustaria a esa resolución no?

gracias de antemano.
  #8 (permalink)  
Antiguo 04/04/2013, 05:20
 
Fecha de Ingreso: septiembre-2012
Mensajes: 66
Antigüedad: 12 años, 3 meses
Puntos: 4
Respuesta: reconocer resolucion de pantalla y redireccionar a css

mm chicos no me funciona este codigo..decirme porque esta mal xd


body {
margin:0%;
width:100%;
height:100%;
}
.pagina {
float:left;
clear:both;
margin-left:20%;
width:500px;
height:600px;
background-color:#0099FF;
}
.contenedor {
float:left;
clear:both;
margin-top:200px;
width:500px;
height:200px;
background-color:#00FF66;
text-align:center;
font-size:36px;
font-weight:bold;
}
/*resolucion de 1024*/
@media screen and (max-width: 1199px) and (min-width: 1001px) {
.pagina {
width:600px;
height:768px;
background-color:#FF00FF;
}
}
/*resolucion de 1280*/
@media screen and (max-width:1399px) and (min-width: 1200px) {
.pagina {
width:800px;
height:768px;
}
}
/*resolucion de 1400*/
@media screen and (max-width:1599px) and (min-width: 1400px) {
.pagina {
width:900px;
height:768px;
}
}
/*resolucion de 1600*/
@media screen and (min-width:1600px) {
.pagina {
width:1000px;
height:1024;
background-color:#9999FF;
}
}

los cambios de colores es para comprobarlo mejor que me cambia..pero no funciona..no se puede tener varios @media screen juntos?? o como seria?
  #9 (permalink)  
Antiguo 04/04/2013, 08:28
 
Fecha de Ingreso: septiembre-2012
Mensajes: 66
Antigüedad: 12 años, 3 meses
Puntos: 4
Respuesta: reconocer resolucion de pantalla y redireccionar a css

SOLUCIONADO

ya esta chicos.ya lo e conseguido hacer xd era algo facil y sencillo y algo logico pero no me salia hehe

pongo el codigo:


Código CSS:
Ver original
  1. @media screen {
  2. #pagina {
  3.     float:left;
  4.     clear:both;
  5.     width:600px;
  6.     height:768px;
  7.     margin-left:20%;
  8.     background-color:#00FF00;
  9. }
  10.  
  11.  
  12. }
  13. @media screen and (min-width: 1000px) {
  14.     #pagina {
  15.         width:700px;
  16.         background-color:#0000FF;
  17.     }
  18.        
  19. }
  20. @media screen and (min-width: 1200px) {
  21.     #pagina {
  22.         width:700px;
  23.         background-color:#F00;
  24.     }
  25.        
  26. }

simplemente ir de menos a mas y ya funciona!no esta probado en IE pero espero que funcione.sabeis si deberia ir en IE?
  #10 (permalink)  
Antiguo 03/06/2013, 16:48
 
Fecha de Ingreso: mayo-2011
Ubicación: Rosario
Mensajes: 7
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: reconocer resolucion de pantalla y redireccionar a css

Hola, tengo el codigo de mi sitio tambien con @media en una hoja de estilos responsive.css, lo que queria hacer si se puede es desde ese css redireccionar una url a la version movil del sitio.
Es decir, en lugar de que siempre adapte al ancho de las diferentes pantallas que cuando sea menor a por ejemplo 500px que redireccione automáticamente a la version movil, alguien sabe como seria un codigo css que redireccione a otra url?
  #11 (permalink)  
Antiguo 03/06/2013, 22:29
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 16 años, 4 meses
Puntos: 103
Respuesta: reconocer resolucion de pantalla y redireccionar a css

Cita:
Iniciado por tornado88 Ver Mensaje
Hola, tengo el codigo de mi sitio tambien con @media en una hoja de estilos responsive.css, lo que queria hacer si se puede es desde ese css redireccionar una url a la version movil del sitio.
Es decir, en lugar de que siempre adapte al ancho de las diferentes pantallas que cuando sea menor a por ejemplo 500px que redireccione automáticamente a la version movil, alguien sabe como seria un codigo css que redireccione a otra url?
desde css no se puede, ya que css no permite ejecutar javascript.
lo que si se puede es obtener las dimensiones de la pantalla del cliente con javascript
Código Javascript:
Ver original
  1. screen.availWidth; // ancho de la pantalla
  2. screen.availHeight; // alto de la pantalla
__________________
Hangouts de JavaScript todos los jueves 20hs GMT, Unite !
https://plus.google.com/u/0/108504944676960830886

Etiquetas: pantallas, resoluciones
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 19:58.