Foros del Web » Programando para Internet » Javascript »

Bloquear web en portrait y solo visible en landscape

Estas en el tema de Bloquear web en portrait y solo visible en landscape en el foro de Javascript en Foros del Web. Hola amigos a ver si me pueden echar una mano: Como puedo hacer para que mi web solo se vea en horizontal osea landscape y ...
  #1 (permalink)  
Antiguo 20/08/2014, 12:00
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años, 6 meses
Puntos: 5
Bloquear web en portrait y solo visible en landscape

Hola amigos a ver si me pueden echar una mano:

Como puedo hacer para que mi web solo se vea en horizontal osea landscape y bloquear el portrait o vertical.

Y que esto funcione para tablets y moviles.

Existe algun javascript o algo de jquery en este sentido?

Gracias de antemano.
  #2 (permalink)  
Antiguo 20/08/2014, 12:41
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 5 meses
Puntos: 834
Respuesta: Bloquear web en portrait y solo visible en landscape

Podrías colocar un div que ocupe toda la pantalla, con z-index alto para que cubra todo y posicionamiento absoluto o fixed, colocarle el id="portrait" y display igual a none por defecto y usar un media query como este:
Código:
@media (orientation: portrait) {
	#portrait{
		display: block;
          }
}
  #3 (permalink)  
Antiguo 20/08/2014, 15:12
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años, 6 meses
Puntos: 5
Respuesta: Bloquear web en portrait y solo visible en landscape

humm no funciona.


Código CSS:
Ver original
  1. @media (orientation: portrait) {
  2.    
  3.     #cont_escalable_ok{
  4.    
  5.     display: block;
  6.    
  7.     position:absolute;
  8.     width:100%;
  9.     height:100%;
  10.    
  11.     z-index:1000;
  12.  
  13.     }
  14.    
  15.     }
  #4 (permalink)  
Antiguo 20/08/2014, 15:43
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años, 6 meses
Puntos: 5
Respuesta: Bloquear web en portrait y solo visible en landscape

acabo de dar con la solucion por si a alguien le pueda interesar o valer aquí pongo el codigo:

Código CSS:
Ver original
  1. #cont_escalable { display:block; }
  2.          @media only screen and (orientation:portrait){
  3.             #cont_escalable {  
  4.                   -webkit-transform: rotate(90deg);
  5.                   -moz-transform: rotate(90deg);
  6.                   -o-transform: rotate(90deg);
  7.                   -ms-transform: rotate(90deg);
  8.                   transform: rotate(90deg);
  9.                  }
  10.  
  11.          }
  12.          @media only screen and (orientation:landscape){
  13.             #cont_escalable {  
  14.                   -webkit-transform: rotate(0deg);
  15.                   -moz-transform: rotate(0deg);
  16.                   -o-transform: rotate(0deg);
  17.                   -ms-transform: rotate(0deg);
  18.                   transform: rotate(0deg);
  19.                  }
  20.          }

este codigo hace girar a horizontal el contenido de un div, en este caso al contenido de la web o lo que se quisiera poner dentro.

saludos
  #5 (permalink)  
Antiguo 21/08/2014, 03:07
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años, 6 meses
Puntos: 5
Respuesta: Bloquear web en portrait y solo visible en landscape

Creo que he cantado victoria demasiado pronto.

Me explico, el codigo que he puesto efectivamente funciona perfectamente. pero no es lo mismo que si esta en modo portrait por consiguiente gire 90 grados.

Que bloquear el portrait para que solo se muestre en landscope (osea evitar girar), y esto ultimo es lo que necesito pero en javascript no en css por que a dicho codigo tendria que implementarle despues yo algunas cosas mas que no vienen al caso ahora.

Y esto no se como hacerlo


Si alguien me pudiera echar una mano le estaria muy agradecido.
  #6 (permalink)  
Antiguo 21/08/2014, 05:24
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 5 meses
Puntos: 1012
Respuesta: Bloquear web en portrait y solo visible en landscape

tienes un montón de información
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #7 (permalink)  
Antiguo 21/08/2014, 06:13
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años, 6 meses
Puntos: 5
Respuesta: Bloquear web en portrait y solo visible en landscape

Pero que no es detectar, la orientacion, es bloquear una orientacion.
  #8 (permalink)  
Antiguo 21/08/2014, 08:00
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 5 meses
Puntos: 834
Respuesta: Bloquear web en portrait y solo visible en landscape

Es exactamente lo que hace la respuesta que puse, que es casi un estandar: se coloca una capa (div) que oculta el contenido. Esta capa suele tener un texto como este: "El modo portrait no está soportado".
  #9 (permalink)  
Antiguo 21/08/2014, 13:34
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 5 meses
Puntos: 1012
Respuesta: Bloquear web en portrait y solo visible en landscape

Cita:
Iniciado por mensajeescrito Ver Mensaje
Que bloquear el portrait para que solo se muestre en landscope (osea evitar girar), y esto ultimo es lo que necesito pero en javascript no en css ........
y como piensas hacerlo sin detectar si está en panorámica o retrato antes??

Cita:
Iniciado por mensajeescrito Ver Mensaje
Pero que no es detectar, la orientacion, es bloquear una orientacion.
como te dice panino; su propuesta es correcta. tal vez no has sabido llevarla a cabo. el bloque ha de estar posicionado justamente después la etiqueta <body>
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #10 (permalink)  
Antiguo 22/08/2014, 04:26
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años, 6 meses
Puntos: 5
Respuesta: Bloquear web en portrait y solo visible en landscape

Panino5001 e IsabelM, mirad:

Probe el codigo de panino para este menester pero no funciono.

Ahora bien despues me dijisteis que efectvamente el codigo de panino era el que tenia que poner para lo que necesitaba.

Asi que relei el segundo post, osea el de panino y oh!! sorpresa ¿a ver si veis el error?.

Cuando me escribiste el post me dijiste:

"Podrías colocar un div que ocupe toda la pantalla, con z-index alto para que cubra todo y posicionamiento absoluto o fixed, colocarle el id="portrait" y display igual a none por defecto y usar un media query como este:"

Si te fijas pones el display en none.


Pero luego en el codigo en vez de ponerlo en none, lo pusiste en block

osea pusite esto:

Código CSS:
Ver original
  1. @media (orientation: portrait) {
  2.     #portrait{
  3.         display: block;
  4.           }
  5. }

Por eso no funcionaba.

Pero ya he adaptado el codigo que me has aconsejado, panino, poniendolo en none .

Y funciona perfectamente, gracias a los dos, isabel y panino por ayudarme.
  #11 (permalink)  
Antiguo 22/08/2014, 04:45
 
Fecha de Ingreso: mayo-2012
Mensajes: 760
Antigüedad: 12 años, 6 meses
Puntos: 5
Respuesta: Bloquear web en portrait y solo visible en landscape

humm una cosa que parece una tonteria pero no lo es:

¿ Como dices, panino, que se puede poner un mesaje del estilo "El modo portrait no esta soportado",

Si dicho div esta en display none?


Al estar en display none no deja ni ver la pagina ni tampoco este

mensaje de : el modo portrait no esta soportado.


De que forma puedo poner este mensaje de aviso entonces?



ok no he dicho nada, el mensaje hay que ponerlo fuera en otro div y jugar con el z-index para mostrar el mensaje.

Espero a alguien pueda servirle mi auto duda aclarada ejejejejej

Última edición por mensajeescrito; 22/08/2014 a las 04:52
  #12 (permalink)  
Antiguo 22/08/2014, 07:34
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 5 meses
Puntos: 834
Respuesta: Bloquear web en portrait y solo visible en landscape

Me alegra haberte confundido y que te sirviera

Etiquetas: bloquear, funcion, visible
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 23:40.