Foros del Web » Creando para Internet » CSS »

[SOLUCIONADO] Ejercicio que no entiendo de librosweb

Estas en el tema de Ejercicio que no entiendo de librosweb en el foro de CSS en Foros del Web. Hola, estoy haciendo los ejercicios de la página librosweb.es, de los capítulos CSS, y estoy por el ejercicio 6 que describe el comportamiento del float. ...
  #1 (permalink)  
Antiguo 15/06/2013, 11:22
Avatar de Iballa  
Fecha de Ingreso: marzo-2013
Mensajes: 107
Antigüedad: 11 años, 1 mes
Puntos: 6
Ejercicio que no entiendo de librosweb

Hola, estoy haciendo los ejercicios de la página librosweb.es, de los capítulos CSS, y estoy por el ejercicio 6 que describe el comportamiento del float. No lo entiendo.....

-siendo <span> dos elementos en linea, que flotan uno al lado del otro por defecto, ¿por qué hay que darle un float, encima a los dos, para que se vea como el resultado de la página? Pero....si ya están uno a la derecha y otro a la izquierda¡¡¡

-no habiendo más elementos después del span, ¿por qué poner otro div para limpiar el float?

el ejercicio es este:http://librosweb.es/css/capitulo_15/ejercicio_6.html

Gracias
  #2 (permalink)  
Antiguo 15/06/2013, 12:03
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: Ejercicio que no entiendo de librosweb

Elementos en linea no es igual a elementos que flotan. Por lo que esta afirmación:

Cita:
siendo <span> dos elementos en linea, que flotan uno al lado del otro por defecto
es errónea.

Y no están por defecto uno a la izquierda y otro a la derecha. Están uno al lado del otro.

Para lo de limpiar el float tendrás que poner algo de código.

Lo de limpiar el flotado, se hace para que el elemento padre tome la altura de sus hijos, ya que al estar flotados, no hacen al padre crecer en altura.

Hay otra técnica para solución eso, que es añadir al elemento padre un overflow con un valor de auto o hidden. También existe otra solución llamada Micro Clearfix. Esta última suele ser la más recomendable porque la del overflow a veces puede crear otros problemas.
  #3 (permalink)  
Antiguo 15/06/2013, 12:07
 
Fecha de Ingreso: abril-2010
Mensajes: 122
Antigüedad: 14 años
Puntos: 18
Respuesta: Ejercicio que no entiendo de librosweb

otra forma de limpiar el float sin usar codigo extra, al div q contiene los tag con float, agregarle un overflow:hidden
  #4 (permalink)  
Antiguo 15/06/2013, 12:11
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: Ejercicio que no entiendo de librosweb

Cita:
Iniciado por comablck Ver Mensaje
otra forma de limpiar el float sin usar codigo extra, al div q contiene los tag con float, agregarle un overflow:hidden
En realidad no se limpia el flotado con overflow, sólo se fuerza al padre a tomar la altura de sus hijos.
  #5 (permalink)  
Antiguo 15/06/2013, 14:12
Avatar de Iballa  
Fecha de Ingreso: marzo-2013
Mensajes: 107
Antigüedad: 11 años, 1 mes
Puntos: 6
Respuesta: Ejercicio que no entiendo de librosweb

Para no perderme en definiciones que esten bien o mal, mi duda es más bien, ¿por qué si ya están uno al lado del otro, ya que span es un elemento en linea, hay que hacerlos flotar para obtener el mismo resultado, según dice el ejercicio...

para los que les de pereza ir al enlace lo pongo. El ejercicio dice:

A partir del código HTML proporcionado:

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3.   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  4.   <title>Ejercicio posicionamiento float</title>
  5.   <style type="text/css">
  6.   </style>
  7. </head>
  8.  
  9.   <div>
  10.     &laquo; Anterior &nbsp; Siguiente &raquo;
  11.   </div>
  12. </body>
  13. </html>

Determinar las reglas CSS necesarias para que el resultado sea similar al mostrado en la siguiente imagen:




y la solución que da al ejercicio es esta:

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  4. <title>Ejercicio posicionamiento float</title>
  5. <style type="text/css">
  6. div#paginacion {
  7.   border: 1px solid #CCC;
  8.   background-color: #E0E0E0;
  9.   padding: .5em;
  10. }
  11. .derecha {
  12.   float: right;
  13. }
  14. .izquierda {
  15.   float: left;
  16. }
  17. div.clear {
  18.   clear: both;
  19. }
  20. </head>
  21.  
  22. <div id="paginacion">
  23. <span class="izquierda">&laquo; Anterior</span> <span class="derecha">Siguiente &raquo;</span>
  24. <div class="clear"></div>
  25. </div>
  26. </body>
  27. </html>

repito, ¿para que tanto rollo si ya estan uno al lado del otro, un poco mas lejos eso si...pero al fin y al cabo uno al lado del otro?

pd: no me maten por pregunta tonta
  #6 (permalink)  
Antiguo 15/06/2013, 14:50
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: Ejercicio que no entiendo de librosweb

Pues obviamente para que uno esté a la derecha del todo y otro a la izquierda. No es un poco más lejos. Si el contenedor midiera 5000 pixeles verías que no es sólo un poco.

Hay más formas de conseguir el mismo efecto, pero todas pasan por cambiarle el display: inline —cuando flotas un elemento, se convierte implícitamente en un elemento de bloque.

Por ejemplo, podrías poner que los span midieran 50% cada uno, ¿no? Así cubriría cada uno la mitad y por extensión uno estaría a la izquierda del todo y otro a la derecha. Pero no pasaría eso, porque a elementos en linea no les puedes aplicar un ancho. Ejemplo: http://jsbin.com/oziheh/1/edit

Y no te olvides que son ejercicios para aprender el comportamiento y mostrarte situaciones de distinta índole.
  #7 (permalink)  
Antiguo 17/06/2013, 05:41
Avatar de Iballa  
Fecha de Ingreso: marzo-2013
Mensajes: 107
Antigüedad: 11 años, 1 mes
Puntos: 6
Respuesta: Ejercicio que no entiendo de librosweb

Gracias pzin, ahora lo entiendo. El float right hace que se pege el elemento al extremo más de la derecha de la caja padre. Entonces el float left estaria de más no?

Por otro lado, el elemento padre pierde altura, al salirse sus hijos del flujo normal..

.y la otra caja adicional que ponen, hija tambien del contenedor padre, al darle clear hace que esa caja padre pille altura?...
  #8 (permalink)  
Antiguo 17/06/2013, 05:49
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: Ejercicio que no entiendo de librosweb

Todo correcto Iballa.

Poco más que decir.

Etiquetas: ejercicio
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 20:57.