Autor Tema: HTML y CSS vertical-align middle diferencias entre IE, Firefox, Chrome CU01043D  (Leído 2006 veces)

hymsoft

  • Intermedio
  • ***
  • Mensajes: 103
  • hymsoft
    • Ver Perfil
Buenas buenas!!!! dejo mis respuestas!!! Ejercicio resuelto CU01043D del tutorial básico de desarrollo web.

noto...  :P (pedro entenderá)

Citar
Analiza el siguiente código, visualiza su resultado y responde a las preguntas:

<html>
<head>
<title>Portal web - aprenderaprogramar.com</title> <meta charset="utf-8">
<style type="text/css">
*{font-family: arial; }
div { width: 360px; height: 210px; margin: 10px; padding:5px 20px;
border-style: solid; border-color: red; border-width: thin;
background-color: yellow; text-align: center; float: left;}
#vcent { display: table;  }
#vcent span { display: table-cell; vertical-align:middle;}
</style>
</head>
<body>
<div><span>Línea de texto contenedor 1</span></div>
<div id="vcent"><span>Línea de texto contenedor 2</span></div>
</body>
</html>
 
 

a) ¿Cuántas cajas contenedoras hay? ¿Están identificadas por id o por class o por ninguno de ellos?

b) Visualiza el resultado en al menos dos navegadores distintos. ¿Qué diferencias observas entre ambos? ¿A qué crees que se deben?

c) ¿Por qué el texto <<Línea de texto contenedor 2>> se muestra centrado verticalmente?

d) Modifica el código para que el texto <<Línea de texto contenedor 1>> se muestre centrado verticalmente.

Respuestas

a) Veo 2 cajas contenedoras, una de ellas identificadas por ID

b) En mi caso lo probé con IE - Firefox - Chrome (todos actualizados a la ultima versión disponible y con un zoom de 100% en todos los casos) y el único cambio que noté es que Chrome me muestra un poco mas oscuros los bordes y el texto.

c) Está centrado por la propiedad display:table-cell, la cual esta afectada por por la propiedad vertical-align:middle

d)Para centrar el texto <<Línea de texto contenedor 1>> elimine el identificador ID y use un class que afecte a los 2 div de la misma manera. Mi código modificado es este

CU01043D.html
Código: [Seleccionar]
<html>
  <head>
    <title>Portal web - aprenderaprogramar.com</title>
    <meta charset="utf-8">
    <style type="text/css">
      *{font-family: arial; }
      div {
        width: 360px;
        height: 210px;
        margin: 10px;
        padding:5px 20px;
        border-style: solid;
        border-color: red;
        border-width: thin;
        background-color: yellow;
        text-align: center;
        float: left;}
     
      .vcent { display: table;  }
      .vcent span { display: table-cell; vertical-align:middle;}
    </style>
  </head>
 
  <body>
    <div class="vcent"><span>Línea de texto contenedor 1</span></div>
    <div class="vcent"><span>Línea de texto contenedor 2</span></div>
  </body>
</html>
« Última modificación: 28 de Septiembre 2016, 21:26 por Alex Rodríguez »
"Una persona inteligente es aquel que sabe ser tan inteligente como para contratar gente mas inteligente que el"

pedro,,

  • Moderador Global
  • Experto
  • *******
  • APR2.COM
  • Mensajes: 1292
    • Ver Perfil
Re:CSS vertical-align middle (CU01043D)
« Respuesta #1 en: 18 de Septiembre 2016, 23:56 »
Hola hymsoft.

noto todo.

Sobre el ejercicio, a, b y d bien.

En la respuesta c habría que añadir que el elemento padre de donde se aplica "display:table-cell" tiene que contener la propiedad "display:table" para poder conseguir la alineación vertical.

Saludos. ;D

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".