Foros del Web » Creando para Internet » Diseño web »

HTML responsive

Estas en el tema de HTML responsive en el foro de Diseño web en Foros del Web. Hola a todos! Lo primero gracias de antemano y lo segundo si este no es el sitio idoneo para colocar el post que la persona ...

  #1 (permalink)  
Antiguo 30/07/2015, 07:57
4589
Invitado
 
Mensajes: n/a
Puntos:
HTML responsive

Hola a todos!

Lo primero gracias de antemano y lo segundo si este no es el sitio idoneo para colocar el post que la persona responsable lo mueva.

A ver os cuento. Tengo una web en HTML 5 al 99% y un 1% de javascript, es una acción muy básica que se repite en varias páginas. Los estilos los tengo en diferentes CSS colocados.

La web ocupa 600px de ancho y esta centrada a la pantalla. Mi pregunta es: ¿cómo hago para que la web sea responsive y en el móvil se vea el diseño adaptado? ¿Es complicado?

Mi nivel de HTML es básico\medio. Esto lo hago por aprender me gusta el bricolaje 2.0 como.yo lo llamó


Muchas gracias!
  #2 (permalink)  
Antiguo 30/07/2015, 08:32
Avatar de fede5426  
Fecha de Ingreso: diciembre-2014
Ubicación: Córdoba
Mensajes: 446
Antigüedad: 9 años, 4 meses
Puntos: 208
Respuesta: HTML responsive

Para hacer un sitio responsive se utilizan las Media Queries de CSS. Consiste en adaptar la apariencia del sitio según el ancho del dispositivo. Con las media queries podes cambiar cualquier atributo que ya hayas asignado anteriormente a un elemento para que se aplique según el ancho de la ventana.

Un ejemplo fácil para tu caso, siendo que tu sitio es de 600px de ancho, supongamos que querés que en móviles en vertical ocupe todo el ancho del dispositivo..

Teniendo como referencia ésta imagen:



Lo que deberías hacer sería lo siguiente:

Código CSS:
Ver original
  1. .contenedor{
  2.         width:600px;
  3.         margin:0 auto;
  4.     }
  5.  
  6. @media screen and (max-width:320px){
  7.    
  8.     .contenedor{
  9.         width:100%;
  10.     }
  11.    
  12. }

Es decir, indicamos que sólo cuando el ancho del navegador sea menor a 320px, el contenedor ocupe el 100%.

Para hacer sitios responsive se utilizan mucho los porcentajes en el atributo width.. Por ejemplo, en tu caso lo que yo haría seria indicarle al contenedor que tenga un ancho de 90% y ancho maximo de 600px.. Así si el dispositivo mide menos de 600px, el contenedor va a ocupar siempre el 90% de la ventana, en cambio si mide mas de 600px, el contenedor siempre va a ocupar 600px porque le asignamos un tamaño máximo.

Código CSS:
Ver original
  1. .contenedor{
  2.         width:90%;
  3.         max-width:600px;
  4.         margin:0 auto;
  5.     }

Solo con eso ya tendrías tu .contenedor responsive, ahora te queda acomodar el resto de tus elementos según creas necesario.

Saludos!


PD: Esto es una guia Ultra Hiper Archi Mega Resumida, para que más o menos entiendas en qué consiste y cómo se aplica.. lo recomendable es que busques en google guías más completas sobre diseño responsive y media queries..

Última edición por fede5426; 30/07/2015 a las 08:41
  #3 (permalink)  
Antiguo 30/07/2015, 09:11
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 10 años, 7 meses
Puntos: 145
Respuesta: HTML responsive

Yo no confiaría en las medidas estándar de las pantallas, porque a día de hoy hay una variedad abismal.

Lo más lógico sería crear un diseño líquido con breakpoints/media-queries donde sea necesario.
__________________
¿Te sirvió la respuesta? Deja un +1
  #4 (permalink)  
Antiguo 30/07/2015, 09:25
Avatar de fede5426  
Fecha de Ingreso: diciembre-2014
Ubicación: Córdoba
Mensajes: 446
Antigüedad: 9 años, 4 meses
Puntos: 208
Respuesta: HTML responsive

Cita:
Iniciado por NueveReinas Ver Mensaje
Yo no confiaría en las medidas estándar de las pantallas, porque a día de hoy hay una variedad abismal.

Lo más lógico sería crear un diseño líquido con breakpoints/media-queries donde sea necesario.
Por eso dije lo de "teniendo como referencia ésta imagen".. nunca dije que sea una medida que si o si deba usarse. Si es cierto que tampoco aclaré lo de utilizar media queries solo donde sea necesario.
También por el mismo motivo indiqué la segunda opción para hacer su contenedor responsivo, indicando un ancho en porcentajes y un ancho máximo para pantallas grandes..

Y repito, lo mejor es buscar guías sobre diseño responsive, leer y leer de diferentes lugares, es difícil indicar en una respuesta TODO lo que se debe tener en cuenta para hacer un buen diseño adaptable.

Un consejo que puedo agregar aprovechando ésta respuesta, es que le des una mirada también a Flexbox.

Saludos
  #5 (permalink)  
Antiguo 30/07/2015, 16:01
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

Hola de nuevo!

Gracias por vuestras rápidas respuestas.

A ver os comento cuando veo mi web en el móvil y le doy dos golpes a la pantalla se me ajustan justo los bordes al tamaño de la pantalla y eso... es lo que quiero.

Mi web es muy sencilla con que se ajusten los bordes me llega. Ahora lo que ocurre es que se ven los bordes blancos a los lados y me gustaría que desaparecieran para que se ajustase.

No sé si me explico bien. En principio no necesito más.

Eso sería sencillo de hacer, es decir, con porcentajes se podría hacer o cómo?

Muchas gracias!!!!
  #6 (permalink)  
Antiguo 30/07/2015, 18:58
Avatar de fede5426  
Fecha de Ingreso: diciembre-2014
Ubicación: Córdoba
Mensajes: 446
Antigüedad: 9 años, 4 meses
Puntos: 208
Respuesta: HTML responsive

Agrega esto a tu head:

Código HTML:
Ver original
  1. <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0" />

Y esto a los estilos de tu contenedor:

Código CSS:
Ver original
  1. .contenedor{
  2.         width:100%;
  3.         max-width:600px;
  4.         margin:0 auto;
  5.     }

Como explique antes, de esta forma el ancho del contenedor va a ser del 100% de la ventana, solo si es menor a 600px.. si es mayor, se va a quedar en 600px.

Proba si te sirve de esa manera, y sino seria bueno que pegues tu codigo HTML y CSS acá en otra respuesta para revisarlo y darte una mano.

Saludos
  #7 (permalink)  
Antiguo 31/07/2015, 02:40
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

Hola!!

Miles de gracias!!

Más o menos es lo que buscaba. Pero ahora me ocurre una cosa las imágenes desde el móvil se me ven mal al hacer esto.

Siempre se me han visto mal pero claro ahora al ajustarse la web se notan más. A qué se debe esto??

Gracias!
  #8 (permalink)  
Antiguo 31/07/2015, 05:02
Avatar de fede5426  
Fecha de Ingreso: diciembre-2014
Ubicación: Córdoba
Mensajes: 446
Antigüedad: 9 años, 4 meses
Puntos: 208
Respuesta: HTML responsive

Podrias facilitarnos la version online del sitio para revisar?
  #9 (permalink)  
Antiguo 31/07/2015, 12:27
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

Hola!

No tengo el site subido.

Lo que me ocurre creo que es una cosa que había leído hace tiempo en este foro y es que como que para que las imágenes se vean bien del todo, es decir, que ni se vean pixeladas ni con poca definición hay que hacer no sé lo qué, poner un código o algo así para que se redimensionen o no sé qué.

Todo esto en móvil pq en escritorio se ven perfectamente.

No sé si me he explicado bien del todo.

Gracias!
  #10 (permalink)  
Antiguo 31/07/2015, 21:18
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 10 años, 7 meses
Puntos: 145
Respuesta: HTML responsive

¿Podrías poner un ejemplo gráfico del problema con las imágenes?
__________________
¿Te sirvió la respuesta? Deja un +1
  #11 (permalink)  
Antiguo 01/08/2015, 17:15
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

¿Cómo adjunto una imagen que tengo en el móvil y escribiendo desde el móvil?

Gracias!
  #12 (permalink)  
Antiguo 02/08/2015, 09:36
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: HTML responsive

Cita:
Iniciado por 4589 Ver Mensaje
¿Cómo adjunto una imagen que tengo en el móvil y escribiendo desde el móvil?

Gracias!
Súbelo a imgur
__________________
(:
  #13 (permalink)  
Antiguo 02/08/2015, 11:02
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

Gracias!!

Esta es la imagen:

http://imgur.com/TGQI3vm

Veis como no se ve nada nada bien. En la versión de escritorio se ven a la perfección. No recuerdo muy bien las medidas pero son algo como 80px de alto por 133px de ancho.

Y es que creo recorda un tema en el foro en el que ya se habló de como solucionar esto.

¿Sabéis a que es debido?

Gracias!!
  #14 (permalink)  
Antiguo 05/08/2015, 10:16
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

Hola!

Me podéis ayudar!

Gracias!!
  #15 (permalink)  
Antiguo 05/08/2015, 10:43
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

Cita:
fede5426
He hecho lo que me han comentado pero las imágenes que tienen 600 px de ancho no se ajustan. Se ajusta todo me las imágenes.

¿Por qué?

Gracias!
  #16 (permalink)  
Antiguo 05/08/2015, 10:52
(Desactivado)
 
Fecha de Ingreso: abril-2015
Ubicación: España
Mensajes: 616
Antigüedad: 9 años
Puntos: 74
Respuesta: HTML responsive

Cita:
Iniciado por 4589 Ver Mensaje
He hecho lo que me han comentado pero las imágenes que tienen 600 px de ancho no se ajustan. Se ajusta todo me las imágenes.

¿Por qué?

Gracias!
tienes que añadir este estilo

Código CSS:
Ver original
  1. img
  2. {
  3.      max-width: 100%;
  4. }
  #17 (permalink)  
Antiguo 05/08/2015, 16:00
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

Hola!

Gracias por la ayuda pero no me funciona. Algo he debido de hacer mal.

¿Lo qué?

Código:
Html
<figure>
          <img src="http://www.forosdelweb.com/f91/images/xxxxx/xxx.jpg" width="600" height="150"/>
        </figure>
En la ruta no sé pq me sale la ruta esa de foros del web.
Código:
Css
figure
	{
	margin: 0px 0px 20px 0px;
  max-width: 100%;
	}
Creo que está todo bien, ¿no?

Gracias!
  #18 (permalink)  
Antiguo 05/08/2015, 16:28
(Desactivado)
 
Fecha de Ingreso: abril-2015
Ubicación: España
Mensajes: 616
Antigüedad: 9 años
Puntos: 74
Respuesta: HTML responsive

Prueba con este código

Código HTML:
Ver original
  1.     <style>
  2.     img
  3.     {
  4.         max-width: 100%;
  5.     }
  6.     </style>
  7. </head>
  8.     <img src="http://www.lauramcalister.com/wp-content/uploads/2015/07/534806-cat.jpg" />
  9. </body>
  10. </html>
  #19 (permalink)  
Antiguo 05/08/2015, 17:33
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 9 meses
Puntos: 263
Respuesta: HTML responsive

no veo porque no se les ajusta la imagen:
asi funciona:

Código HTML:
Ver original
  1. img{
  2.     width:100%;
  3. }
  4. #caja{
  5.     width:60%;
  6.     height:60%;
  7. }
  8. <div id="caja">
  9. <img src="img/fondo2.jpg" />
  10. </div>

y asi:

Código HTML:
Ver original
  1. img{
  2.     width:100%;
  3. }
  4. <img src="img/fondo2.jpg" />
__________________
[email protected]
HITCEL
  #20 (permalink)  
Antiguo 06/08/2015, 05:21
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

Uiii tienes que perdonar.

Eso que me has puesto no sé muy bien dónde debo colocarlo

En mi web no tengo divs esta todo con html5.

¿Cómo adaptaría beso al código que he escrito que es así como lo tengo?

Mil gracias y perdonar mi torpeza!
  #21 (permalink)  
Antiguo 11/08/2015, 06:19
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

Hola a todos de nuevo, a ver si me podéis ayudar

No se me ajustan las imágenes. Por más que lo he intentado nada de nada.

Lo he mirado en un iPhone 6 y en un nexus 5 y nada se me descolocan, por el lado derecho se me van, tanto en vertical como en horizontal.

Sin embargo lo he probado en un iPad 1 y tanto en horizontal como en vertical me funciona bien, las imágenes me ajustan.

En los móviles lo he probado con la último versión de Chrome y en el iPad con Safari.

Sí me podéis echar un cable OS lo agradecería!

Miles de gracias!
  #22 (permalink)  
Antiguo 11/08/2015, 06:57
Avatar de fede5426  
Fecha de Ingreso: diciembre-2014
Ubicación: Córdoba
Mensajes: 446
Antigüedad: 9 años, 4 meses
Puntos: 208
Respuesta: HTML responsive

Con esto:

Código CSS:
Ver original
  1. figure{
  2.    margin: 0px 0px 20px 0px;
  3.    max-width: 100%;
  4. }

lo que estas indicando es que la etiqueta <figure> tenga un max-width de 100%.. asignale el width a la imagen también para que tenga un tamaño definido, sino la imagen siempre va a ocupar su tamaño por defecto, que son 600px según leí mas arriba.

Es decir, tu css debería quedar asi:

Código CSS:
Ver original
  1. figure{
  2.    margin: 0px 0px 20px 0px;
  3.    max-width: 100%;
  4. }
  5.  
  6. figure img{
  7.    width:100%;
  8. }

Saludos
  #23 (permalink)  
Antiguo 11/08/2015, 08:01
Avatar de luisdavid1993  
Fecha de Ingreso: julio-2015
Ubicación: Anaco Venezuela
Mensajes: 78
Antigüedad: 8 años, 9 meses
Puntos: 2
Respuesta: HTML responsive

Código Cita:
Ver original
  1. No se me ajustan las imágenes. Por más que lo he intentado nada de nada.


mira esta pagina http://getbootstrap.com/

es un framework muy bueno y facil de usar, solo necesitaras ponerle la clase img-resposive a tus imagenes y tendran el efecto que buscas
__________________
"Lucha por tus sueños o alguien te contratara para que cumplas los de el"
  #24 (permalink)  
Antiguo 11/08/2015, 08:09
Avatar de fede5426  
Fecha de Ingreso: diciembre-2014
Ubicación: Córdoba
Mensajes: 446
Antigüedad: 9 años, 4 meses
Puntos: 208
Respuesta: HTML responsive

Cita:
Iniciado por luisdavid1993 Ver Mensaje
Código Cita:
Ver original
  1. No se me ajustan las imágenes. Por más que lo he intentado nada de nada.


mira esta pagina http://getbootstrap.com/

es un framework muy bueno y facil de usar, solo necesitaras ponerle la clase img-resposive a tus imagenes y tendran el efecto que buscas
Antes de aprender Bootstrap debes saber cómo funciona CSS, podés ser un experto en el framework pero si no sabes como manejar una hoja de estilos vas por mal camino.

Si tenés pensado trabajar de esto, puede que algún día te pidan modificar un sitio ya creado en el que no hayan utilizado Bootstrap, y qué vas a hacer? Rechazarlo? No es la forma.

Siempre aprende el código base primero, después si te intriga usar un framework, adelante..

4589 probá con lo que te mencioné más arriba.

Saludos
  #25 (permalink)  
Antiguo 11/08/2015, 08:22
Avatar de luisdavid1993  
Fecha de Ingreso: julio-2015
Ubicación: Anaco Venezuela
Mensajes: 78
Antigüedad: 8 años, 9 meses
Puntos: 2
Respuesta: HTML responsive

Código Cita:
Ver original
  1. Antes de aprender Bootstrap debes saber cómo funciona CSS

la verdad soy nuevo programando, e creado algunas webs pero no soy experto, si domino las hojas de estilo pero no a un nivel como el tuyo, por eso me apoyo en framework y a las ves los estudio para aprender, veo sus codigos los uso, los modifico con el motivo de aprender... y si me gustaria dedicarme a esto en un futuro
__________________
"Lucha por tus sueños o alguien te contratara para que cumplas los de el"
  #26 (permalink)  
Antiguo 11/08/2015, 09:25
Avatar de fede5426  
Fecha de Ingreso: diciembre-2014
Ubicación: Córdoba
Mensajes: 446
Antigüedad: 9 años, 4 meses
Puntos: 208
Respuesta: HTML responsive

Cita:
Iniciado por luisdavid1993 Ver Mensaje
Código Cita:
Ver original
  1. Antes de aprender Bootstrap debes saber cómo funciona CSS

la verdad soy nuevo programando, e creado algunas webs pero no soy experto, si domino las hojas de estilo pero no a un nivel como el tuyo, por eso me apoyo en framework y a las ves los estudio para aprender, veo sus codigos los uso, los modifico con el motivo de aprender... y si me gustaria dedicarme a esto en un futuro
No lo dije en mala manera ni me refería precisamente a tu caso, sino que el usuario 4589 está tratando de hacer su sitio responsive a través de código puro.. recomendarle un framework para "solucionarle" el problema no me parece lo ideal para alguien que está aprendiendo o que está intentando hacer RWD por su cuenta, solo eso, no hay broncas
  #27 (permalink)  
Antiguo 11/08/2015, 09:40
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

De verdad podéis enfadaros todo lo que queráis pero... Esto no va...

CSS
Código:
body 
	{ 
	margin: 25px auto 50px auto;
  max-width: 90%;
	width:600px;
  margin: 25px auto 50px auto;
	background: #ffffff;
	}

figure
	{
	margin: 0px 0px 20px 0px;
  max-width: 100%;
	}
En el body he puesto el 90% para que no quedase a sangre.
Y en figure ponga el porcentaje que ponga no funciona. Eso sí sí coloco el max-width en el código en vez de en el CSS lo que hace es deformar la imagen para que ajuste y aún así lo hace como quiere.

Miles de gracias!

Agradezco mucho vuestra ayuda.
  #28 (permalink)  
Antiguo 11/08/2015, 10:50
Avatar de fede5426  
Fecha de Ingreso: diciembre-2014
Ubicación: Córdoba
Mensajes: 446
Antigüedad: 9 años, 4 meses
Puntos: 208
Respuesta: HTML responsive

Pero leíste lo que te dije?

El width tenés que asignárselo a la etiqueta <img> no a <figure>

Copia esto y pegalo en tu codigo:

Código CSS:
Ver original
  1. figure{
  2.    margin: 0px 0px 20px 0px;
  3.    max-width: 100%;
  4. }
  5.  
  6. figure img{
  7.    width:100%;
  8. }
  #29 (permalink)  
Antiguo 11/08/2015, 10:58
4589
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: HTML responsive

Vale perfecto!!! No me había fijado pero... Ahora viene otro problema.

Las imágenes están deformadas, me las ajusta a copón y quedan deformes. No me las ajusta a lo ancho pero no a lo alto.

y por otro lado tengo una imagen que no ocupa 600px y me la estira hasta que ocupa todo lo ancho.

¿Cómo solucionó eso?

Millones de gracias!!
  #30 (permalink)  
Antiguo 11/08/2015, 11:26
Avatar de fede5426  
Fecha de Ingreso: diciembre-2014
Ubicación: Córdoba
Mensajes: 446
Antigüedad: 9 años, 4 meses
Puntos: 208
Respuesta: HTML responsive

Cita:
Iniciado por 4589 Ver Mensaje
Las imágenes están deformadas, me las ajusta a copón y quedan deformes. No me las ajusta a lo ancho pero no a lo alto.
Proba colocando height:auto; a los estilos de "figure img".

figure img{
width:100%;
height:auto;
}


Cita:
Iniciado por 4589 Ver Mensaje
tengo una imagen que no ocupa 600px y me la estira hasta que ocupa todo lo ancho.
Era la idea, que ocupe todo el contenedor.

Etiquetas: html
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 05:51.